Google app engine Maven+;应用程序引擎&x2B;谷歌Eclipse插件
有没有一种方法可以让Maven兼容的GoogleAppEngine(Java)项目与Eclipse内部的GoogleEclipse插件兼容 谢谢 编辑: 现在对Maven插件的本机支持:Google app engine Maven+;应用程序引擎&x2B;谷歌Eclipse插件,google-app-engine,maven,google-eclipse-plugin,Google App Engine,Maven,Google Eclipse Plugin,有没有一种方法可以让Maven兼容的GoogleAppEngine(Java)项目与Eclipse内部的GoogleEclipse插件兼容 谢谢 编辑: 现在对Maven插件的本机支持: 取决于您所说的“兼容”以及您使用的GAE插件的功能。我们使用appengine maven插件和eclipse,它们似乎可以很好地协同工作,但我们没有使用GWT或JDO。与maven/eclipse的大多数内容一样,我发现最好从命令行运行您的东西,并将eclipse用作编辑器。+1到Rick的答案,但我想补充一
取决于您所说的“兼容”以及您使用的GAE插件的功能。我们使用appengine maven插件和eclipse,它们似乎可以很好地协同工作,但我们没有使用GWT或JDO。与maven/eclipse的大多数内容一样,我发现最好从命令行运行您的东西,并将eclipse用作编辑器。+1到Rick的答案,但我想补充一下: 谷歌有一个关于这方面的教程:
也就是说,我们从未让它100%发挥作用。
maven gwt插件
似乎与Eclipse有问题,如果您使用的是APT的RequestFactory,情况会变得更糟。maven gae插件
似乎运行良好。从cmdline运行要容易得多。此外,在Eclipse3.7/m2e中有一个已知的bug[需要引用],它阻止了很多事情正常工作。我使用maven和GAE的一年来,JDO没有出现任何问题。
以下是我在MacOSX雪豹上的配置:
- ApacheMaven3.0.3
- Eclipse版本:3.7.1
- m2e-针对Eclipse的Maven集成1.0.100.20110804-1717
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>PROJECT_NAME</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
项目名称
org.eclipse.jdt.core.javabuilder
如前所述,谷歌为maven提供了支持:
但是看起来它不能完全与Eclipse一起工作(正如其中一条评论中提到的:“SDK location”.m2\repository\com\google\appengine\appengine-api-1.0-SDK\1.7.2\appengine-api-1.0-sdk-1.7.2.jar“不是目录”)
为了解决这个问题,我使用了maven eclipse插件,并为GAE/JRE指定了容器:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<classpathContainers>
<classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
<classpathContainer>com.google.appengine.eclipse.core.GAE_CONTAINER</classpathContainer>
</classpathContainers>
</configuration>
</plugin>
org.apache.maven.plugins
maven eclipse插件
2.9
org.eclipse.jdt.launching.JRE_容器
com.google.appengine.eclipse.core.GAE_容器
我关于GAE+Maven+Eclipse的一般发现。
规则1:使用GAE原型生成GAE项目:
第2条规则:如果您想使用Eclipse进行开发-不要先执行“mvn Eclipse:Eclipse”然后再导入-这会导致很多问题。而是作为“Maven项目”导入
规则3:简单/有效的解决方案如何创建YouTube上描述的MVN/GAE/Eclipse项目
另外,我正在使用单独的Web/DAO/Domain模块进行项目工作,稍后我将发布我的发现和线索。我希望能够使用Google Eclipse插件的所有GAE功能,同时能够使用Maven的依赖项/测试/部署功能。比如让Maven链接app engine sdk等。我想将我的项目集成到Jenkins中。谢谢此外,我没有使用任何特定的工具框架,如GWT/JDO:)是的,所有这些都可以。但是您可能需要手动编辑GAE插件设置(在eclipse的项目配置中)以使用~/.m2/repository/。。。。用于您的GAE SDK。查看文档,确保您也将配置设置为指向/src/webapp中的war。我一直收到这样的错误:“SDK位置'\.m2\repository\com\google\appengine\appengine-api-1.0-SDK\1.7.2\appengine-api-1.0-SDK-1.7.2.jar'不是目录”。我已经将Maven依赖关系推到了类路径的底部,但没有结果。有人看到这个吗?它是目录吗?是否定义了settings.xml文件?如果你这样做,你可能指向错误的位置。该目录应该在您的主目录中(在unix~/.m2/repository上),您的意思是使用maven gae插件运行命令行吗?我想这就是我最后要做的。。谢谢对mvn package gae:deploy
=win。我一直收到这样的错误:“SDK位置'\.m2\repository\com\google\appengine\appengine-api-1.0-SDK\1.7.2\appengine-api-1.0-SDK-1.7.2.jar'不是目录”这就是你看到的吗?解决了,尽管gae容器仍然在类路径上,但gae的本质已经消失了!!