我有一个包含代码生成器的xtext语言项目(使用xtext 2.13 / java8)。生成器生成java代码,需要编译并运行另一个支持库,我已将其作为另一个插件包含在我的项目中。该项目包括使用生成器测试框架编译和执行的生成器junit测试。在日食中,一切都建立并运行良好。我设置了一个maven构建,它成功地构建了所有东西,并运行了解析器和验证测试,但它在生成器测试中失败了,因为它无法解析对我的支持库的依赖性。这些测试在eclipse下成功运行的事实告诉我,我已经正确构建了插件清单,但不知何故,maven构建缺少对支持库的编译/欺骗依赖。 在maven下运行时,我需要做什么来配置生成器测试以包含这些依赖项? 我在eclipse或命令行中运行maven时遇到同样的错误:生成器成功生成代码,但编译无法编译,因为编译器无法解析支持类的依赖关系。
答案 0 :(得分:0)
问题在支持库的build.properties文件中被证明是一个微妙的错误。 bin.includes设置是
bin.includes = META-INF
但它还需要包括'。'如下:
bin.includes = META-INF,\
.
我不了解你,但我很难看到那个时期。 不确定它是如何被删除的,但线索是生成的jar文件不包含任何类。 Maven构建通过SNAPSHOT jar文件解析,而eclipse构建显然可以直接找到类。