2013-04-04 90 views
3

我已經JavaFX應用程序,我已經成功地創建應用程序的安裝程序,但我想改變安裝的Java默認的圖標,所以我加入了 $ {BASEDIR } /src/main/resources/images/logoIcon.ico在pom.xml中 但如下它不能改變,如何更改安裝java的默認圖標在Java的Mac安裝程序

的pom.xml的全部扣:

HTTP://maven.apache .org/xsd/maven-4.0.0.xsd「>

<modelVersion>4.0.0</modelVersion> 

<groupId>com.testDemo</groupId> 
<artifactId>test-app</artifactId> 
<name>demo-app</name> 

<packaging>jar</packaging> 
<version>1.0</version> 

<organization> 
    <!-- Used as the 'Vendor' for JNLP generation --> 
    <name>testDemo</name> 
</organization> 

<properties> 
    <slf4j.version>1.6.1</slf4j.version> 
    <springframework.version>3.2.2.RELEASE</springframework.version> 
</properties> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>com.zenjava</groupId> 
      <artifactId>javafx-maven-plugin</artifactId> 
      <version>1.5</version> 
      <configuration> 

       <mainClass>com.testdemo.testapp.testApplication</mainClass> 

       <!-- only required if signing the jar file --> 
       <keyStoreAlias>example-user</keyStoreAlias> 
       <keyStorePassword>example-password</keyStorePassword> 
       <permissions> 
        <permission>all-permissions</permission> 
       </permissions> 
       <icon>${basedir}/src/main/resources/images/logoIcon.ico</icon> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 

    </plugins> 
</build> 


<dependencies> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>${springframework.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>${springframework.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>com.miglayout</groupId> 
     <artifactId>miglayout-javafx</artifactId> 
     <version>4.2</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-lang</groupId> 
     <artifactId>commons-lang</artifactId> 
     <version>2.6</version> 
    </dependency> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>${slf4j.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>jcl-over-slf4j</artifactId> 
     <version>${slf4j.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>${slf4j.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.16</version> 
    </dependency> 

    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.11</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.commons</groupId> 
     <artifactId>commons-io</artifactId> 
     <version>1.3.2</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-beanutils</groupId> 
     <artifactId>commons-beanutils-core</artifactId> 
     <version>1.8.3</version> 
    </dependency> 

    <dependency> 
     <groupId>com.javadocmd</groupId> 
     <artifactId>simplelatlng</artifactId> 
     <version>RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>javax.xml.bind</groupId> 
     <artifactId>jaxb-api</artifactId> 
     <version>2.2.7</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.xml.bind</groupId> 
     <artifactId>jaxb-impl</artifactId> 
     <version>2.2.6</version> 
    </dependency> 

    <dependency> 
     <groupId>org.json</groupId> 
     <artifactId>json</artifactId> 
     <version>20090211</version> 
    </dependency> 

</dependencies> 

以及用於創建包,我使用下面的命令,

  1. MVN JFX:內置罐(它給應用程序的唯一罐)
  2. MVN JFX:建立天然(它給出的.dmg應用程序文件)

所以,請建議我,如何更改默認安裝程序圖標爲Mac。

回答

1

快速瀏覽一下source code讓我覺得圖標不能在子目錄(這似乎是一個bug)。

作爲一種變通方法,您可以嘗試上移動你的logoIcon.ico一個目錄(src/main/resources

如果它不工作,你也可以嘗試把它放在src/main/deploy/(而不是在子目錄中)

調試它,你也可以使用-X選項運行Maven和尋找日誌:

Using icon file at ...

要小心這個日誌,因爲它可能會打印正確的路徑,而似乎只有文件名將被用來解析圖標(即,子迪爾斯將被忽略)

+0

感謝的建議回答一樣,但仍然沒有工作,我們正在 [DEBUG]使用的圖標文件在「/用戶/ MAC-5 /飛行規劃師/ src目錄/主/部署/ logoIcon .ico'在調試日誌中。 仍然圖標不能更改 – PDP 2013-04-04 12:00:42

+0

所以你可以建議解決這個問題? – PDP 2013-04-06 06:01:23

3

我添加的src/main /部署/包/ MacOSX的/ myapp.ico那裏,它終於摸索:)

對於你:

創建的src/main /部署/與名$ {} project.build.finalName包/ MacOSX的/文件夾 添加圖標.ICO 運行mvn JFX:打造本土 我還沒有發揮它廣泛 - 只要得到它的工作,並希望分享。所以如果你想使用不同名稱的圖標,我不知道如何。至少還沒有。 config部分中的...部分似乎適用於webstart,所以我沒有使用它。希望你得到它的工作!

How to set custom icon for javafx native package icon on Windows

相關問題