Google App Engine,Maven和Eclipse开发设置

时间:2013-10-14 12:32:16

标签: eclipse google-app-engine maven

我会尽量保持这一点。我已经 Eclipse 安装了 M2E(Maven to Eclipse)插件。我正在开发一个 GAE(Google App Engine)项目。除了一件非常讨厌的事情之外,一切都正常工作:我每次做出改变时都必须停止/启动devserver。

如果您对此设置有任何经验,那么您可以回答这个简单的问题吗?

我在命令行上使用“mvn appegnine:devserver”启动开发服务器。现在我希望如果我对* .jsp进行了更改,例如,这些更改会自动在devserver上更新。这是怎么回事?

我注意到如果我对目标文件夹下的* .jsp文件进行了更改,那么devserver将会看到这些更改和更新,正如我所期望的那样。我认为我的问题在于Eclipse没有将更改复制到目标文件夹,但不确定是否甚至假设?

有没有人对如何调查这个问题有任何建议?我已经没想完了: - /

我提前感谢您提出的任何意见。

P.s我知道我可以运行“mvn package”来更新文件,但这很慢,并且devserver在执行两次后会耗尽内存。

4 个答案:

答案 0 :(得分:3)

这可能会有点痛苦,这取决于你想要的工作方式以及你正在使用哪种版本的日食。

  1. 如果您还没有安装m2e-wtp插件。这是让印度项目在日食中发挥作用的秘诀。请注意,这不是m2e - 而是另一个插件。

  2. 安装GPE - eclipse的google插件,如果你没有

  3. 确保您的项目由m2e作为maven项目进行管理。

  4. 进入项目属性 - 使用GPE(在' Google'下列出)将其作为appengine项目启用。在你来这里时别忘了记下HRD。

  5. 转到项目构建路径(属性 - > Java构建路径)。

    • 在源选项卡上确保您的src / main / resources没有**排除。
    • 确保在图书馆标签上有三个图书馆' JDK',' Google Appengine'和Maven Dependencies'没有别的
    • 确保订单和导出选项卡上的appengine依赖项高于maven依赖项。
  6. 这听起来很荒谬 - 我不确定为什么仍然如此痛苦,但这是成功的好方法。一旦完成,这应该允许你在eclipse本身的调试中运行,加载代码,jsps,css,脚本等等。我已经在helios,indigo和juno中完成了这项工作。

    您可以阅读有关m2e-wtp设置说明here的更多信息。它们指的是GWT,但它与appengine相同(我不确定为什么强调在GAE上使用GWT),因为它实际上是关于GPE和Maven的正确设置。

    您还会发现,您可能需要经常重复步骤5的某些部分 - 如果您的应用未正确加载,请快速查看以确保您的资源未被排除。使用m2e插件更新项目配置时会发生这种情况。

    wtp-m2e插件会在修改资源时更新目标文件夹 - 所以这也应该解决从命令行运行的问题,但我无法保证 - 我更喜欢直接运行eclipse。 / p>

答案 1 :(得分:1)

我和你有同样的问题,但我用其他方式解决了。我使用 FileSync 插件(可以在市场上找到)。 使用此插件,您可以配置输入目录(webapp)和输出目录(目标)。 对webapp所做的任何更改都将传递给目标。 我也帮了。

答案 2 :(得分:0)

你可以像这样使用rsync:

     rsync -r --existing   src/main/webapp/ target/ROOT

其中“ROOT”是项目构建finalName。

答案 3 :(得分:0)

以下观点对我有用。

在订单和导出选项卡上确保appengine依赖项高于maven依赖项。