我正在尝试使用 izpack 为我们的应用程序创建安装程序,在 linux 中执行脚本文件时遇到问题。我能够通过进程面板运行 bat 文件。请回复
问问题
1188 次
2 回答
4
如果您在此处提供更多信息,这个问题会更容易回答...
盲目猜测我会说您需要确保使用可执行标记将可执行位保留在您的 linux shell 脚本中,如下所示:
<pack name="Tomcat 6 Application Server" required="yes" packImgId="Tomcat.image">
<description>The Tomcat 6.0 Web Application Server.</description>
<fileset dir="windows/apache-tomcat-6.0.32" targetdir="$INSTALL_PATH">
<os family="windows" />
</fileset>
<fileset dir="linux/apache-tomcat-6.0.32" targetdir="$INSTALL_PATH">
<os family="unix" />
</fileset>
<parsable targetfile="$INSTALL_PATH/conf/server.xml" type="xml" />
<parsable targetfile="$INSTALL_PATH/conf/tomcat-users.xml" type="javaprop" />
<parsable targetfile="$INSTALL_PATH/bin/catalina.bat" type="plain" />
<parsable targetfile="$INSTALL_PATH/bin/catalina.sh" type="plain" />
<executable targetfile="$INSTALL_PATH/bin/catalina.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/startup.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/shutdown.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/digest.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/setclasspath.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/tool-wrapper.sh" keep="true" stage="never" />
<executable targetfile="$INSTALL_PATH/bin/version.sh" keep="true" stage="never" />
</pack>
于 2011-06-24T21:05:56.140 回答
1
您可以<executable>
在包定义中使用标签来指定哪些文件是可执行文件。关键是要有stage="never"
属性,这样 izpack 就不会执行文件,并且要设置keep="true"
,这样 izpack 就不会删除它。
例如:
<executable targetfile="$INSTALL_PATH/bin/some-secript"
os="unix" stage="never" failure="warn" keep="true"/>
于 2016-06-07T13:39:18.893 回答