在linux中执行脚本文件时出现问题

时间:2011-05-31 07:18:57

标签: izpack

我正在尝试使用izpack为我们的应用程序创建安装程序,我在linux中执行脚本文件时遇到问题。我能够通过进程面板运行bat文件。请回复

2 个答案:

答案 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"/>

documentation

[izpack-user] Setting file-permissions in Linux