Eclipse – 如何将Kotlin添加到Tomcat项目 – 编译Kotlin和Java文件

我需要帮助将Kotlin编译添加到现有的eclipse java tomcat项目中。

为了记录,我在Eclipse Oxygen 4.7上安装了Kotlin插件。 我已经成功地创建并运行了基于Gradle的Spring引导Kotlin rest api demo,并且可以编译和运行“Kotlin Only Projects”并使用我的其他java库 – 真棒。

但是现在我有了Kotlin,我想用它来工作我的其他“传统”Tomcat 8项目,它们是Java J2EE – 动态WTP …我想在Kotlin中编写的新servlet。

我希望能够在我之前的任何一个包中的java src文件夹中添加一个Kotlin类,所以当我构建一个战争的时候,所有的逻辑上都在一起。

IDE似乎没问题 – 我在一个包(在tomcat项目的Java src包文件夹中)创建了Kotlin类,它在解析,导入或依赖性方面没有问题。

我在想WOW !,现在好了重启WTP中的Tomcat服务器,我就可以执行我的Kotlin Servlet了。 没有 – 404 404 404。

我检查了WEB-INF / classes构建文件夹和所有的Java类文件…猜我看到了什么? 一个名为KotlinServlet.kt的文件(即我的测试servlet的名称,源版本不是编译类版本)

所以由于某些原因,build / package / deployment没有编译* .kt文件,只是复制它(也许这是默认的WTP部署)。

我不知道这是否可以通过“添加Kotlin自然”来解决,奇怪的是没有一个日食Kotlin菜单功能可供我使用。 如果我右键点击我的项目,我没有得到Kotlin菜单选项。

Eclipse声明插件已安装。

所以我的问题是:

鉴于现有的传统WTP Tomcat servlet项目,我们可以如何识别和编译* .kt文件? 如何以及为什么我没有Kotlin菜单功能? (我下载并测试了Oxygen Java和J2EE版本 – 安装了Kotlin插件 – 并且没有添加Kotlin Nature的菜单,我也试着每晚构建插件,没有出现菜单,很显然,puglin安装了编译其他Kotlin项目和编辑工作。

从我的研究 – “添加Kotlin自然”应该做联合Java / Kotlin编译的窍门,但是菜单功能不可用在任何地方?

如果这是一个“Kotlin项目”日食编译Kotlin罚款。

有任何想法吗? 看起来像一个IntelliJ阴谋。

谢谢,

好的,我正在缩小这个。 我发现kotlin类正在编译到这个位置在运行时库下? 也许这将是我可以构建到我正常的类文件夹的东西。

在这里输入图像描述

您需要添加相应的依赖关系。 管理项目依赖关系的最简单方法是使用构建工具( mavengradleAnt + Ivy …)。 在maven的例子中,你需要:

<properties> <!-- your properties... and define version fir kotlin --> <kotlin.version>1.1.4</kotlin.version> </properties> <dependencies> <!-- your project dependencies... and add one for kotlin --> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-stdlib-jre8</artifactId> <version>${kotlin.version}</version> </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-test</artifactId> <version>${kotlin.version}</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <!-- your project plugins... and add one for kotlin --> <plugin> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-maven-plugin</artifactId> <version>${kotlin.version}</version> <executions> <execution> <id>compile</id> <phase>compile</phase> <goals> <goal>compile</goal> </goals> </execution> <execution> <id>test-compile</id> <phase>test-compile</phase> <goals> <goal>test-compile</goal> </goals> </execution> </executions> <configuration> <jvmTarget>1.8</jvmTarget> </configuration> </plugin> </plugins> </build> 

如果您使用IDE,则需要安装kotlin语言支持插件,以使kotlin compiletest run更友好。

好的 – 要获得所有的Kotlin菜单 – 事实证明你需要在PACKAGE EXPLORER选项卡上而不是PROJECT EXPLORER。 刚刚通过侥幸发现。

.kt文件的创建将自动将Kotlin的运行时和库添加到您的项目中。

现在就在构建/编译的问题上。 仍然出色。

确定更新 – 下载的IntelliJ和“IT”可以在15分钟内开箱即用,我运行了一个混合Java / Kotlin Tomcat项目。

仍然对Eclipse解决方案感兴趣,但是我可能只是将现金用于IntelliJ。 时间就是金钱。