我在使用时遇到问题官方 Maven 插件 https://developers.google.com/appengine/docs/java/tools/maven以及带有 Google Appengine 的 Java 7。
配置
我的项目配置pom.xml
很简单:
在属性部分我配置:
<gae.version>1.7.4</gae.version>
后来我使用这个插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>${gae.version}</version>
</plugin>
错误信息
每当我跑步时mvn appengine:update
我收到以下错误:
无法更新应用程序:应用程序包含 Java 7 类,但尚未设置 --use_java7 标志。
我尝试解决它
当然,我试图解决这个问题。跑步
mvn appengine:update --use_java7
or
mvn appengine:update -D--use_java7
没有帮助,因为该标志不用于 Maven 插件,而是用于appcfg
script.
如何将标志传递给脚本,以便我可以使用 Java 7(或者我还能做些什么)?
App Engine Java 7 支持目前适用于 Trusted Tester,尚未向公众开放,您可以在以下位置申请 Trusted Tester:here https://docs.google.com/a/google.com/forms/viewform?id=13UvQiEjr7ob-QXMSFch5LByQN8vHa70Rl98g8ipCf9c.
幸运的是最新的官方maven插件确实实现了这个功能,参见AbstractAppCfgMojo.java http://code.google.com/p/appengine-maven-plugin/source/browse/src/main/java/com/google/appengine/AbstractAppCfgMojo.java#134:
... ...
/**
* Use the App Engine Java 7 runtime for this app.
*
* @parameter
*/
protected boolean useJava7;
... ...
if (useJava7) {
arguments.add("--use_java7");
}
... ...
您可以在 pom.xml 中使用以下插件配置来启用 Java7 支持:
</build>
<plugins>
... ...
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>${gae.version}</version>
<configuration>
<useJava7>true</useJava7>
</configuration>
</plugin>
</plugins>
</build>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)