Heroku webapp-runner --enable-naming

时间:2016-10-31 15:08:31

标签: java maven heroku embedded-tomcat-7 webapp-runner

我一直在面对一个精简的任务:部署一个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,as WEBAPP_RUNNER_OPTS: - context-xml tomcat-heroku-server-conf / context.xml --enable-naming

提前致谢。

2 个答案:

答案 0 :(得分:1)

此选项已添加到webapp-runner 8.0.33.1中,但在撰写本文时,Heroku CLI WAR deployment pluginHeroku 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。

答案 1 :(得分:0)

我收到了来自heroku支持代码手指的类似回复

为了将来的通知我已添加

<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>