2011-05-11 62 views
9

我想通过启用Maven2的WebAppCreator创建一个GWT项目。在Eclipse中运行Maven GWT应用程序的问题

项目创建步骤:

  1. 创建WebAppCreator项目(我使用GWT-2.3.0)

    webAppCreator -noant -maven -XnoEclipse退房手续MyApp的com.example.MyApp

  2. 导入项目在Eclipse中现有的Maven项目(太阳神)
  3. 启用 “项目” - > “属性” - > “谷歌” - > “谷歌Web工具包” - > “使用谷歌Web工具包” 复选框
  4. 设置项目属性“Google” - >“Web应用程序” - >“该项目有一个WAR目录”。设置WAR目录路径“src/main/webapp”并取消选中“从此目录启动并部署”
  5. Java构建路径为“MyApp/target/www/WEB-INF/classes”
  6. 我没有更改设置在pom.xml中
  7. 使用gwt eclipse插件编译项目(2.3.0版本)。它成功编译。
  8. 尝试将项目作为Web应用程序运行。当我运行应用程序GWT插件不问我关于WAR文件夹。 我所做的这一切,我在日志中看到:

[WARN]服务器类“com.example.server.GreetingServiceImpl”无法在Web应用程序中找到,但在系统类路径中发现

[WARN]添加类路径条目 '文件:/首页/ REDFOX /工作区/ JAVA/REDFOX/MyApp的/目标/网络/ WEB-INF /班/' 到Web应用程序的classpath本次会议

[WARN]在Web应用程序中找不到服务器类“com.google.gwt.user.client.rpc.RemoteService”,但在系统类路径中找到

[WARN]将类路径条目'file:/home/redfox/.m2/repository/com/google/gwt/gwt-servlet/2.3.0/gwt-servlet-2.3.0.jar'添加到网页此会话的应用程序类路径

当我尝试从URL(http://127.0.0.1:8888/MyApp.html?gwt.codesvr=127.0.0.1:9997)加载页面时,我看到404错误。 在日志中我没有看到任何错误。我如何运行这个默认应用程序?另外我还有一个问题:如果这个问题将得到解决,我怎么能在web模式(而不是在开发模式下)运行此应用程序使用链接像“http://127.0.0.1:8888”whithout参数gwt.codesvr?

P.S.对不起,我的英语不好。

+1

我具有同样的问题。一直在挖掘它几个小时。显然这是Maven get插件中的某种类加载问题。 – 2011-08-09 12:48:31

+0

我也有这样的问题... – caarlos0 2011-12-07 18:54:01

回答

-2

我什么建议可以开始略有不同的比你更喜欢,但效果会更好:)

  1. 安装m2eclipse插件。这将为你的环境增加许多不错的Maven特性。
  2. 使用新项目向导创建新的Maven项目
  3. 不要选择 “简单的项目” 复选框,而是使用GWT原型的一个(我建议GWT-Maven的插件)

enter image description here

然后通过maven为您创建具有所有必需依赖项的适当项目结构。有关GWT插件的更多信息,请参阅http://mojo.codehaus.org/gwt-maven-plugin/user-guide/archetype.html,包括如何执行它。

P.S.你的英文很好:)

+2

我已经安装了最新的m2eclipse,但与OP有相同的问题。安装m2eclipse会给你带来很多,但并不能解决这个问题。 – 2011-08-09 12:47:12

0

我明白你的失望,相信我,我最近经历了和你现在一样的问题。

正如尤金表示,按照他的指令,但是......

Select an Archetype选择版本2.3.0-1(其他人可能工作,但这个工作对我来说)

Select an Archetype

生成您的示例应用程序使用Archtype版本。做一个mwt gwt:运行,你会看到这个屏幕(如果一切顺利) 点击“启动默认浏览器”。

祝你好运。 干杯 PB

Launcher

0

我知道这个问题是两年。但我只是有同样的问题,现在想出了如何解决它。

当Eclipse不问你在为你的“战争”目录中的首次发射,也可以手动设置:

在日食进入“运行” - >“调试配置...”。选择您的“Web应用程序” - >选择“参数” - 选项卡并添加参数,例如“-war C:\ YourProjectPath \ target \ YourProject-1.0-SNAPSHOT”。提供指向您的目标的完整路径,由maven生成。

希望帮助别人更快地解决这个问题:)

0

我知道这是旧的,但这里是我的最新方法(如还回答here

我不能为webAppCreator因为我说话没有使用它,但是我使用codehause中的gwt-maven-plugin在Eclipse中创建了Maven项目。

在Eclipse

  1. 打开创建Maven的GWT项目Directy在Eclipse的新项目向导和过滤的Maven项目。

  2. 选择Maven项目并单击下一步。

  3. 输入您的偏好的项目位置,然后单击下一步。

  4. 在原型过滤器中输入“gwt-”并从codehaus中选择gwt-maven-plugin。点击下一步。

  5. 输入您的maven项目详细信息和模块值,然后单击完成。

这将在Eclipse中为您创建一个maven-gwt项目。这附带了一个示例应用程序,您可以使用它来确保可以正确启动应用程序。

运行应用程序的命令行

  1. 打开命令行。
  2. 导航到您的项目主页。
  3. 运行命令“mvn clean package”。
  4. 运行命令 “MVN GWT:运行”

这应该让你和运行。如果您使用2.7.0 gwt-maven-plugin,则默认情况下应该以超级开发模式运行应用程序。

在Eclipse中运行

  1. 正如你已经完成了应用程序,导航到属性>谷歌> Web应用程序,并检查“这个项目有一个WAR目录”。使用这个插件的WAR目录应该是src/main/webapp。
  2. 导航到属性>谷歌> Web工具包,并选中“该项目有一个WAR目录。您可能能够在这里指定模块。我实际上无法这样做,它可能特定于我的Google Plugin for Eclipse或一些特定的环境...
  3. 运行方式> Web应用程序。
  4. 如果你有问题,因为我有过,在第2步,那么你将得到一个错误Missing required argument 'module[s]'。为了解决这个问题打开你的运行配置(应该有被自动创建)并且在参数选项卡中,在参数结尾处添加模块的软件包限定名称,例如com.mycompany.abc.GwtSampleModule。不要添加“.gwt.xml”前缀
    1. 值得一提的是,您的参数中引用的HTML页面是正确的,我也遇到了问题。

应用程序现在应使用此运行配置配置为启动在Eclipse。我的验证环境是:

  • 的Eclipse露娜(V4.4)
  • 谷歌Eclipse插件(V3.8)
  • GWT Maven插件(V2.7.0)
相关问题