首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Eclipse项目中混合使用Scala和Java文件

在Eclipse项目中混合使用Scala和Java文件
EN

Stack Overflow用户
提问于 2010-12-15 19:05:41
回答 2查看 15.5K关注 0票数 19

我可能在做一些愚蠢的事情,但我找不到。

我已经安装了Eclipse Helios (Helios,因为我无法使用Gallileo获得Glassfish支持)和用于Helios的Scala Eclipse插件的夜间构建

我已经创建了一个Scala项目并添加了一些文件-- Java和Scala的混合文件。

它们看起来在语法上都是正确的--至少Eclipse编辑器似乎知道每个文件是哪种语言,并在我出错时正确地报告语法错误--但是Java文件找不到在Scala中创建的类。IDE站点似乎建议这一切都应该正常工作。

在bin目录中没有任何Scala文件的类文件( Java文件定义的每个类都有类文件),所以似乎由于某种原因没有构建Scala文件。这些缺少的类文件可以解释为什么Java文件看不到这些类。

我错过了什么?如何告诉Eclipse构建这些文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-16 02:18:01

我也在使用Helios (因为我已经使用了64位),并发现这个插件有时表现得有点奇怪(尽管老实说,与Galileo没有太大不同)。正如您所发现的,当混合使用Java和Scala时,看起来没有问题,但实际上没有编译代码。或者更糟糕的是,依赖于Scala类的Java类无法编译,因为Scala类没有编译--但是直到项目中的所有错误都消除之后,它才会编译,这当然是在编译之前不会发生的。ug。

我开始修改类路径和项目文件,并最终使其正常工作,尽管我真的不知道为什么。我发誓我更改了一个文件,然后又改回来了,然后它就起作用了??

不管怎样,这是我的文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>xxxxxxxxxxxxx</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
    <buildCommand>
        <name>org.scala-ide.sdt.core.scalabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>
<natures>
    <nature>org.eclipse.jdt.core.javanature</nature>
    <nature>org.scala-ide.sdt.core.scalanature</nature>
</natures>
</projectDescription>

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.scala-ide.sdt.launching.SCALA_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="output" path="bin"/>
</classpath>

关键的事情似乎是SCALA_CONTAINER先于JRE_CONTAINER,但是...我也不敢打赌。“性质”的顺序可能也很重要。

它已经为我工作了一两周了,每天都在更新,所以...**祈祷*

票数 9
EN

Stack Overflow用户

发布于 2012-04-13 04:10:50

我注意到当我创建一个新文件时,Eclipse-IDE有时不会编译我的Scala文件。我必须在Package Explorer中选择项目并刷新它(F5)。此外,您可以在Eclipse中更改编译顺序(Java优先与Scala优先),方法是转到:

窗口->首选项->Scala->编译器->构建管理器->编译顺序

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4449218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档