Eclipse Play子项目中外部库的错误路径

Eclipse Play子项目中外部库的错误路径,eclipse,playframework-2.3,Eclipse,Playframework 2.3,我有一个Play项目,在根项目的子项目文件夹中有多个子项目。在执行activator eclipse之后尝试将项目导入eclipse之前,一切都很好: 当我导入根项目时,会出现一些错误,因为这个项目显然依赖于其他(被遮住的)子项目。 它们中的每一个都有自己的Eclipse项目文件(.project和.classpath),这些文件是由activator Eclipse命令生成的。因此,如果这些子项目的lib文件夹中包含非托管jar文件,那么尝试导入这些子项目也会失败,因为相应的元文件.cl

我有一个Play项目,在根项目的子项目文件夹中有多个子项目。在执行activator eclipse之后尝试将项目导入eclipse之前,一切都很好:

当我导入根项目时,会出现一些错误,因为这个项目显然依赖于其他(被遮住的)子项目。

它们中的每一个都有自己的Eclipse项目文件(.project和.classpath),这些文件是由activator Eclipse命令生成的。因此,如果这些子项目的lib文件夹中包含非托管jar文件,那么尝试导入这些子项目也会失败,因为相应的元文件.classpath子项目包含这些jar的相对类路径条目,当导入为Eclipse项目时,该条目指向错误的位置:


Eclipse在导入项目后将找不到这个库(没有内容的副本)-它的级别太高了两个级别。

播放项目布局:

    • 子项目/模块服务
    • 子项目/模块服务
Eclipse中导入项目的项目布局:

  • 改装服务
  • 模块服务

有什么办法解决这个问题吗?我如何在eclipse中组织Play sun项目,以便它们可以在文件夹库中找到非托管JAR?

在一次非常糟糕的工作之后,创建软链接以满足错误的文件夹查找,我终于找到了一个更好的解决方案:TypeSafe SBT Eclipse插件提供了一个防止创建相对路径的选项:只需将这一行添加到相应子项目的build.SBT

得到了绝对路径

通常不建议使用绝对路径,但在这种情况下,它似乎是一种有效的解决方案

有关TypeSafe SBT Eclipse插件的更多信息,请参见:

<classpathentry kind="lib" path="../../subprojects/mod_service_a/lib/MyLib.jar"/>
EclipseKeys.relativizeLibs := false