我有多模块maven项目,即使用gwt作为主要Web框架构建。 Here is github repo.
Everythink正如我所说的那样工作。我没有错。
不幸的是,当我尝试将此项目导入eclipse(作为maven项目)时会出现问题。我无法编译这个项目(在Package Explorer中使用RMB上的RMB - > Google - > GWT Compile )。
我收到错误:
Loading inherited module 'src.main.resources.pl.derp.parent'
Loading inherited module 'pl.derp.shared'
[ERROR] Unable to find 'pl/derp/shared.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
当我在Package Explorer中尝试 RMB on Project name时 - >运行 - >作为Web应用程序运行(GWT Super Dev Mode) 我有:
Working directory does not exist: /home/danielo/eclipseGwt/gwt_2.7.0_maven_eclipse/web/src/main/webapp
我添加了构建路径的模块。
我已按照此instruction
我认为,我已经做了一切努力使其发挥作用,但仍然可以使其发挥作用。
我认为问题在于包名称,以及maven和eclipse对待它们的方式。他们受到不同的待遇。
Maven很容易找到所需的每个类(f.e。:package pl.derp.web;
)并编译。日食试图通过f.e。src.main.java.pl.derp.web
找到它们但却找不到它。
真的我不知道如何解决这个问题?
我不确定巫婆包名称模式是否更好(src.main.java.pl.derp.server
或pl.derp.server
) - 对我来说,越短越好。
在maven中运行这个项目(很好地描述了here):
并在第二个shell中:
在Eclipse中,我认为我运行的是Jetty server
请给我一些帮助。
答案 0 :(得分:0)
您显然拥有一个Eclipse项目,其中server
,shared
和web
被声明为源目录。使用M2Eclipse时,您应该有3个项目,每个项目都将src/{main,test}/{java,resources}
声明为源目录。至少,没有M2Eclipse,源目录必须是src/{main,test}/{java,resources}
,无论你有1个还是3个项目。
这就是为什么Eclipse会查找src.main.java.pl.derp.server
而不是pl.derp.server
,以及为什么GWT也会失败(类路径同样错误)。