由于所有语言最终都编译为JVM,我可以在一个项目中自由混合所有文件类型吗?
例如,我可以互换地将所有类型的文件放在Eclipse项目中吗?如果我这样做,我怎么能确定在运行我的一些主类时编译所有文件?
这里有任何指南如何将Scala和Xtend部分嵌入到大型Java项目中吗?没有指导从头开始使用?
答案 0 :(得分:2)
你可以 - 只需启用相关的maven插件/ eclipse性质
我能想到的唯一问题是它们之间是否存在循环依赖关系。 scala编译器足够聪明,可以读取和理解java源代码并解决scala和java之间的循环依赖关系,但我怀疑它是否理解xtend - 所以你可能必须避免scala和xtend类之间的循环依赖,并选择一个编译顺序(xtend然后scala,或scala然后xtend)。我假设类似的推理适用于xtend - xtend和java之间的循环依赖可能没问题,xtend和scala之间的循环依赖可能不行。当然,这种循环依赖在任何情况下都是糟糕的风格。
我会问你为什么要这样做。 Xtend旨在为您提供scala最重要的优势,而不会使用完整语言的复杂性。但是如果你要学习并且你的项目依赖于scala,我无法看到你在xtend中编写部分内容会带来什么好处。