从Google App Engine的1.7.4版本开始,官方appengine-maven-plugin由Google发布。它有一个任务appengine:devserver来启动本地开发服务器。
此插件似乎没有任何Maven配置选项。
我想知道我怎么能a) 提供程序 JVM 标志b) 禁用新版本检查(脱机工作时)
请注意,到目前为止,我一直在使用非官方的net.kindleit maven-gae-plugin,如下所示:
<plugin>
<groupId>net.kindleit</groupId>
<artifactId>maven-gae-plugin</artifactId>
<version>0.9.4</version>
<configuration>
<disableUpdateCheck>true</disableUpdateCheck>
<javaAgent>${env.REBEL_HOME}/jrebel.jar</javaAgent>
<jvmFlags>
<jvmFlag>-noverify</jvmFlag>
<jvmFlag>-Ddatastore.backing_store=${project.basedir}/local_db.bin</jvmFlag>
<jvmFlag>-Ddatastore.default_high_rep_job_policy_unapplied_job_pct=20</jvmFlag>
<jvmFlag>-Drebel.spring_data_plugin=true</jvmFlag>
</jvmFlags>
<wait>true</wait>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-tools-sdk</artifactId>
<version>${com.google.appengine.version}</version>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-1.0-sdk</artifactId>
<version>${com.google.appengine.version}</version>
</dependency>
</dependencies>
</plugin>
我写了插件,所以我想这是我的错。 appcfg 操作(如更新/回滚/等)很好地支持该配置,但我显然需要为开发服务器修复一些问题。 我会继续讨论这个问题,很快就会有更新。
更新:我已经推送了一个支持开发服务器目标配置的快照版本。 它在 1.7.5 快照中。
您需要阅读以下内容才能使用快照构建:
从普通的 Maven 存储库获得,因此只需将这些依赖项更新到 1.7.5 版本并省略 SNAPSHOT 存储库的声明就足够了。 1.7.5 maven-appserver-plugin 似乎确实支持 jvmFlags,如下所示:
<configuration>
<jvmFlags>
<jvmFlag>-Ddatastore.default_high_rep_job_policy_unapplied_job_pct=20</jvmFlag>
</jvmFlags>
</configuration>
是的!
感谢MattStep和谷歌团队!
我自己正是有这个问题。检查插件的实际来源,DevAppServerRunner 对向开发服务器传递任何类型的额外参数的支持为零。看起来目前最好的方法是使用非官方插件。
DevAppServerRunner 的源代码.java