在本地运行时,Appassembler`run.as.user.envvar`

时间:2016-01-18 13:38:15

标签: java appassembler

我正在使用appassembler插件成功生成我的应用程序结构。因为我的应用程序是从init.d脚本启动的,所以我修改了配置,因此应用程序在serveruser而不是root下运行:

<generatorConfigurations>                         
    <generatorConfiguration>                                               
            <property>                            
                <name>run.as.user.envvar</name>   
                <value>serveruser</value> <-- Here the user is set -->         
            </property>                           
        </configuration>                          
    </generatorConfiguration>                     
</generatorConfigurations>

这在部署到服务器时工作正常,但我希望能够在运行mvn clean package后在本地运行该应用程序。在这种情况下,它会尝试su(切换用户)到我本地计算机上不存在的serveruser。这有什么最好的做法吗?

最终目标是能够:

  1. 本地构建并通过生成的脚本运行
  2. 将相同的生成项目结构打包并部署并从那里运行

1 个答案:

答案 0 :(得分:1)

我目前的解决方案是提供Maven个人资料。如果设置了local个人资料,则该属性为空,并且未设置run.as.user.envar,因此启动脚本会在当前用户下启动。

如果未设置配置文件,则设置默认配置文件,这将设置生产用户,因此无法在本地启动它,但您可以在服务器上启动。

不是100%但是有效。

相关问题