我一直在使用GWT和Maven,但是无论我尝试做什么,Eclipse 都不想将源代码自动编译到通常的webapp/WEB-INF/classes文件夹中。我尝试使用GWT-Platform中的gwtp-sample-basic样本重现问题;可以在这里找到: gwtp-samples-0.6.zip
在没有类的情况下通过 Jetty 部署和运行项目会导致以下预期错误:
[WARN] Could not instantiate listener example.project.server.MyGuiceServletContextListener
java.lang.ClassNotFoundException: example.project.server.MyGuiceServletContextListener
...
[WARN] EXCEPTION
java.lang.ClassNotFoundException: com.google.inject.servlet.GuiceFilter
...
[WARN] failed guiceFilter: javax.servlet.UnavailableException: com.google.inject.servlet.GuiceFilter
...
[WARN] Failed startup of context com.google.apphosting.utils.jetty.DevAppEngineWebAppContext@aec7ab1{/,/home/user/Documents/Workspace/project/src/main/webapp}
javax.servlet.UnavailableException: com.google.inject.servlet.GuiceFilter
...
使用 Ant,这些类被构建到正确的文件夹webapp/WEB-INF/classes中,但是我尝试过的任何 Maven 配置都无法做到这一点。
- 这可能是 Maven 特有的吗?
- 我可能忘记在 Eclipse 中配置什么?
- 任何有类似问题的人,并找到了如何解决它们?
旁注:使用 Eclipse 的默认 Sonatype Maven 插件。还尝试使用 webAppCreator 工具重新初始化 Maven 项目,但它没有改变结果。使用提供的默认运行配置。webapp/WEB-INF/lib 自动包含所需的库。