我正在尝试使用izpack为我们的应用程序创建安装程序,我在linux中执行脚本文件时遇到问题。我能够通过进程面板运行bat文件。请回复
答案 0 :(得分: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>
答案 1 :(得分:1)
您可以在包装定义中使用<executable>
标签
指定哪些文件是可执行文件。关键是
拥有stage="never"
属性,因此izpack不会执行
该文件并设置keep="true"
所以izpack不会删除它。
例如:
<executable targetfile="$INSTALL_PATH/bin/some-secript"
os="unix" stage="never" failure="warn" keep="true"/>