Heroku webapp-runner --enable-naming
Heroku webapp-runner --enable-naming
我一直面临着一项繁琐的任务:部署一个 spring 项目(使用 JNDI)。
目前问题与 webapp-runner 选项有关 "enable-naming"。
我的数据源由 jndi 声明 - 使用 tomcar context.xml。
当我向 webapp-runner 提供所引用的选项时,我收到此消息:
Exception in thread "main" com.beust.jcommander.ParameterException:
**Unknown option: --enable-naming**
at com.beust.jcommander.JCommander.parseValues(JCommander.java:723)
at com.beust.jcommander.JCommander.parse(JCommander.java:275)
at com.beust.jcommander.JCommander.parse(JCommander.java:258)
at com.beust.jcommander.JCommander.(JCommander.java:203)
at webapp.runner.launch.Main.main(Main.java:74)
我一直在挖掘 webapp-runner 代码并看到了这种情况:
if (commandLineParams.enableNaming ||
commandLineParams.enableBasicAuth ||
commandLineParams.tomcatUsersLocation != null) {
tomcat.enableNaming();
}
所以我尝试了 --enable-basic-auth 选项,我的应用程序运行得很好......问题是我不想在我的站点中使用 basic-auth。
我正在使用 maven heroku-maven-plugin,作为
WEBAPP_RUNNER_OPTS: --context-xml tomcat-heroku-server-conf/context.xml --enable-naming
提前致谢。
此选项已添加到 webapp-runner 8.0.33.1 中,但在撰写本文时,Heroku CLI WAR deployment plugin and the Heroku Maven plugin 默认为 webapp-runner 版本 8.0.30.2。
您可以像这样为 CLI 设置版本:
$ heroku deploy:war --webapp-runner 8.0.33.3 path/to/app.war
或者对于 Maven 是这样的:
$ mvn heroku:deploy-war -Dheroku.webappRunnerVersion=8.0.33.3
我维护 webapp-runner 和那些插件,我会尽快更新它们以使用 8.0.33.3。
我收到了来自 heroku 支持 codefinger 的类似回复
为了将来的通知,我添加了
<webappRunnerVersion>8.0.33.1</webappRunnerVersion>
到 pom.xml 文件中的 heroku-maven-plugin。
所以 heroku-maven-plugin 现在是:
<plugin>
<groupId>com.heroku.sdk</groupId>
<artifactId>heroku-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<includes>
<include>tomcat-heroku-server-conf/</include>
</includes>
<jdkVersion>1.8</jdkVersion>
<configVars>
<CATALINA_OPTS>-XX:MaxPermSize=512M -Xmx1024M -Ddatabase.url=** -Ddatabase.user=** -Ddatabase.password=** -Ddatabase.driver=com.mysql.jdbc.Driver</CATALINA_OPTS>
<JAVA_OPTS></JAVA_OPTS>
</configVars>
<webappRunnerVersion>8.0.33.1</webappRunnerVersion>
<warFile>admin/target/admin.war</warFile>
</configuration>
我一直面临着一项繁琐的任务:部署一个 spring 项目(使用 JNDI)。
目前问题与 webapp-runner 选项有关 "enable-naming"。 我的数据源由 jndi 声明 - 使用 tomcar context.xml。 当我向 webapp-runner 提供所引用的选项时,我收到此消息:
Exception in thread "main" com.beust.jcommander.ParameterException:
**Unknown option: --enable-naming**
at com.beust.jcommander.JCommander.parseValues(JCommander.java:723)
at com.beust.jcommander.JCommander.parse(JCommander.java:275)
at com.beust.jcommander.JCommander.parse(JCommander.java:258)
at com.beust.jcommander.JCommander.(JCommander.java:203)
at webapp.runner.launch.Main.main(Main.java:74)
我一直在挖掘 webapp-runner 代码并看到了这种情况:
if (commandLineParams.enableNaming ||
commandLineParams.enableBasicAuth ||
commandLineParams.tomcatUsersLocation != null) {
tomcat.enableNaming();
}
所以我尝试了 --enable-basic-auth 选项,我的应用程序运行得很好......问题是我不想在我的站点中使用 basic-auth。
我正在使用 maven heroku-maven-plugin,作为 WEBAPP_RUNNER_OPTS: --context-xml tomcat-heroku-server-conf/context.xml --enable-naming
提前致谢。
此选项已添加到 webapp-runner 8.0.33.1 中,但在撰写本文时,Heroku CLI WAR deployment plugin and the Heroku Maven plugin 默认为 webapp-runner 版本 8.0.30.2。
您可以像这样为 CLI 设置版本:
$ heroku deploy:war --webapp-runner 8.0.33.3 path/to/app.war
或者对于 Maven 是这样的:
$ mvn heroku:deploy-war -Dheroku.webappRunnerVersion=8.0.33.3
我维护 webapp-runner 和那些插件,我会尽快更新它们以使用 8.0.33.3。
我收到了来自 heroku 支持 codefinger 的类似回复
为了将来的通知,我添加了
<webappRunnerVersion>8.0.33.1</webappRunnerVersion>
到 pom.xml 文件中的 heroku-maven-plugin。
所以 heroku-maven-plugin 现在是:
<plugin>
<groupId>com.heroku.sdk</groupId>
<artifactId>heroku-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<includes>
<include>tomcat-heroku-server-conf/</include>
</includes>
<jdkVersion>1.8</jdkVersion>
<configVars>
<CATALINA_OPTS>-XX:MaxPermSize=512M -Xmx1024M -Ddatabase.url=** -Ddatabase.user=** -Ddatabase.password=** -Ddatabase.driver=com.mysql.jdbc.Driver</CATALINA_OPTS>
<JAVA_OPTS></JAVA_OPTS>
</configVars>
<webappRunnerVersion>8.0.33.1</webappRunnerVersion>
<warFile>admin/target/admin.war</warFile>
</configuration>