2013-03-07 30 views
1

今天,我创建了一个izpack安装程序,使用maven-izpack-plugin 和install.xml来安装我的maven-project。IzPack安装程序:无法选择磁盘

构建了罚款:)

然而,当我现在测试installer.jar我有一个问题,因为我不能选择 一盘,我想存储软件,因为这些的IzPack窗口是空的。

我无法继续前进,没有选择磁盘。 “安装所需的磁盘空间超出 可用磁盘空间

是否有人为NOW的如何解决这个

继承人的行家的IzPack模块的POM:?

<build> 
    <pluginManagement> 
     <plugins> 
      <plugin> 
       <groupId>org.eclipse.m2e</groupId> 
       <artifactId>lifecycle-mapping</artifactId> 
       <version>1.0.0</version> 
       <configuration> 
        <lifecycleMappingMetadata> 
         <pluginExecutions> 
          <pluginExecution> 
           <pluginExecutionFilter> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-antrun-plugin</artifactId> 
            <versionRange>[1.0.0,)</versionRange> 
            <goals> 
             <goal>run</goal> 
            </goals> 
           </pluginExecutionFilter> 
           <action> 
            <ignore /> 
           </action> 
          </pluginExecution> 
          <pluginExecution> 
           <pluginExecutionFilter> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-dependency-plugin</artifactId> 
            <versionRange>[1.0.0,)</versionRange> 
            <goals> 
             <goal>copy-dependencies</goal> 
            </goals> 
           </pluginExecutionFilter> 
           <action> 
            <ignore /> 
           </action> 
          </pluginExecution> 
         </pluginExecutions> 
        </lifecycleMappingMetadata> 
       </configuration> 
      </plugin> 
     </plugins> 
    </pluginManagement> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-antrun-plugin</artifactId> 
      <executions> 
       <execution> 
        <id>create-staging-area</id> 
        <phase>process-resources</phase> 
        <goals> 
         <goal>run</goal> 
        </goals> 
        <configuration> 
         <tasks> 
          <copy todir="${izpack.staging}"> 
           <fileset dir="${basedir}/src/izpack" /> 
          </copy> 
         </tasks> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-dependency-plugin</artifactId> 
      <version>2.5.1</version> 
      <executions> 
       <execution> 
        <!-- copy *application* jars to izpack staging lib --> 
        <id>copy-product-dependencies</id> 
        <phase>prepare-package</phase> 
        <goals> 
         <goal>copy-dependencies</goal> 
        </goals> 
        <configuration> 
         <outputDirectory>${izpack.staging}/lib</outputDirectory> 
         <excludeTransitive>false</excludeTransitive> 
         <stripVersion>true</stripVersion> 
         <overWriteReleases>true</overWriteReleases> 
         <overWriteSnapshots>true</overWriteSnapshots> 
         <overWriteIfNewer>true</overWriteIfNewer> 
         <excludeScope>system</excludeScope> <!-- this excludes tools.jar, e.g. --> 
         <excludeArtifactIds>mycustompanels</excludeArtifactIds> <!-- IMPORTANT: don't copy custom panels where our application jars live --> 
         <excludeGroupIds>org.codehaus.izpack</excludeGroupIds> <!-- IMPORTANT: we don't want to copy the izpack dependency where our application 
          jars live --> 
        </configuration> 
       </execution> 
       <execution> 
        <!-- copy izpack custom (custom panels, etc.) jars to izpack staging 
         custom --> 
        <id>copy-izpack-dependencies</id> 
        <phase>prepare-package</phase> 
        <goals> 
         <goal>copy-dependencies</goal> 
        </goals> 
        <configuration> 
         <outputDirectory>${izpack.staging}/custom</outputDirectory> 
         <excludeTransitive>false</excludeTransitive> 
         <stripVersion>true</stripVersion> 
         <overWriteReleases>true</overWriteReleases> 
         <overWriteSnapshots>true</overWriteSnapshots> 
         <overWriteIfNewer>true</overWriteIfNewer> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
     <plugin> 
      <groupId>org.codehaus.izpack</groupId> 
      <artifactId>izpack-maven-plugin</artifactId> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <goals> 
         <goal>izpack</goal> 
        </goals> 
        <configuration> 
         <!-- base for relative paths in izpack descriptor --> 
         <baseDir>${izpack.staging}</baseDir> 
         <installFile>${basedir}/src/izpack/install.xml</installFile> 
        </configuration> 
       </execution> 
      </executions> 
      <dependencies> 
       <dependency> 
        <groupId>org.codehaus.izpack</groupId> 
        <artifactId>izpack-panel</artifactId> 
        <version>${izpack.version}</version> 
       </dependency> 
      </dependencies> 
     </plugin> 
    </plugins> 
</build> 

<dependencies> 
    <dependency> 
     <groupId>de.projects</groupId> 
     <artifactId>project1</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </dependency> 
    <dependency> 
     <groupId>de.projects</groupId> 
     <artifactId>project2</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </dependency> 
</dependencies> 

<properties> 
    <izpack.version>5.0.0-beta11</izpack.version> 
    <izpack.staging>${project.build.directory}../../../dist/staging</izpack.staging> 
</properties> 

继承人的INSTALL.XML

<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> 
<installation version="5.0"> 
<info> 
    <appname>myApp</appname> 
    <appversion>1.0</appversion> 
    <uninstaller name="Uninstaller.jar" write="yes"/> 
    <javaversion>1.7</javaversion> 
    <requiresjdk>no</requiresjdk> 
    <writeinstallationinformation>yes</writeinstallationinformation> 
    <pack200/> 
    <run-privileged condition="izpack.windowsinstall.vista|izpack.windowsinstall.7"/> 
</info> 
<guiprefs height="600" resizable="no" width="800"> 
    <modifier key="useFlags" value="yes"/> 
    <modifier key="langDisplayType" value="default"/> 
</guiprefs> 
<locale> 
    <langpack iso3="eng"/> 
</locale> 
<panels> 
    <panel classname="CheckedHelloPanel"/> 
    <panel classname="PacksPanel"/> 
    <panel classname="TargetPanel"/> 
    <panel classname="InstallPanel"/> 
    <panel classname="SimpleFinishPanel"/> 
</panels> 
<packs> 
    <pack name="Data" preselected="yes" required="yes"> 
     <description/> 
     <file override="update" 
      src="home\dist\data" targetdir="$INSTALL_PATH/"/> 
    </pack> 
    <pack name="Libs" preselected="yes" required="yes"> 
     <description/> 
     <file override="update" 
      src="home\dist\lib" targetdir="$INSTALL_PATH/"/> 
    </pack> 
</packs> 

回答

0

请ŧ在PacksPanel之前将TargetPanel放置在install.xml中。原因在于PacksPanel的实现需要$ INSTALL_PATH,如果放置在之前,TargetPanel将正确提供$ INSTALL_PATH。

<panel classname="TargetPanel"/> 
<panel classname="PacksPanel"/>