我有一个正常工作的grails项目。最近,我们的团队决定在应用程序中添加一个额外的功能,该功能已经在我们自己的Java独立应用程序中实现。 “那么”,我想,“我只需要在我的工作区中引用独立的Java项目”。所以我这样做了 - 从Grails one引用了我的Java项目,并从位于src / groovy的Groovy类中调用了该服务。当我尝试运行Web项目时,出现了编译错误:
Error Compilation error: startup failed:
unable to resolve class com.CycleManager
它说错误是CycleManager类的导入行。
为什么不能groovy找到引用的项目?我做错了什么?
感谢。
答案 0 :(得分:2)
这是因为grails无法看到暴露服务的jar / classes。您需要在grails类路径中包含jar(不在您的工作区中)。这可以通过在依赖关系部分的grails应用程序的 BuildConfig.groovy 文件中提及jar来完成。
dependencies {
// your jar name
compile ("com.CycleManager")
}
这是在您的应用程序中包含jar的正确方法。
P.S:Grails希望你的jar在其常春藤缓存中。如果它不存在于ivy-cache中,它将从快照文件夹中提取。