如何在mac installer的java中更改安装程序的java默认图标

如何在mac installer的java中更改安装程序的java默认图标,java,maven,javafx,maven-plugin,pom.xml,Java,Maven,Javafx,Maven Plugin,Pom.xml,我有javafx应用程序,我已经成功地创建了应用程序的安装程序,但是我想更改安装程序的java默认图标,所以我添加了 ${basedir}/src/main/resources/images/logoIcon.ico 在pom.xml中,但它不能更改 pom.xml的整个快照如下所示: http://maven.apache.org/xsd/maven-4.0.0.xsd“> 4.0.0 com.testDemo 测试应用程序 演示应用程序 罐子 1 测试演示 1.6.1 3.2.2.1发布

我有javafx应用程序,我已经成功地创建了应用程序的安装程序,但是我想更改安装程序的java默认图标,所以我添加了 ${basedir}/src/main/resources/images/logoIcon.ico 在pom.xml中,但它不能更改

pom.xml的整个快照如下所示:

http://maven.apache.org/xsd/maven-4.0.0.xsd“>

4.0.0
com.testDemo
测试应用程序
演示应用程序
罐子
1
测试演示
1.6.1
3.2.2.1发布
com.zenjava
javafxmaven插件
1.5
com.testdemo.testapp.testApplication
示例用户
示例密码
所有权限
${basedir}/src/main/resources/images/logoIcon.ico
org.apache.maven.plugins
maven编译器插件
1.7
1.7
org.springframework
弹簧芯
${springframework.version}
org.springframework
spring上下文
${springframework.version}
com.migplayout
miglayout javafx
4.2
公地郎
公地郎
2.6
org.slf4j
slf4j api
${slf4j.version}
org.slf4j
jcl-over-slf4j
${slf4j.version}
org.slf4j
slf4j-log4j12
${slf4j.version}
log4j
log4j
1.2.16
朱尼特
朱尼特
4.11
测试
org.apache.commons
公地io
1.3.2
公地小海狸
公地豆核
1.8.3
com.javadocmd
简化
释放
javax.xml.bind
jaxb api
2.2.7
com.sun.xml.bind
jaxb impl
2.2.6
org.json
json
20090211

对于创建包,我使用以下命令

  • mvnjfx:buildjar(它只提供应用程序的jar)
  • mvnjfx:buildnative(它提供应用程序的.dmg文件)
  • 因此,请建议我,如何更改mac的默认安装程序图标。

    快速查看会让我觉得图标不能位于子目录中(似乎是个bug)

    作为一种解决方法,您可以尝试将
    logoIcon.ico
    移动到上一个目录(在
    src/main/resources
    中)

    如果它不起作用,您也可以尝试将其放入
    src/main/deploy/
    (而不是子目录)

    要调试它,还可以使用
    -X
    选项运行maven并查找日志:

    在…处使用图标文件


    但是请小心使用此日志,因为它可能会打印正确的路径,而似乎只有文件名将用于解析图标(即子目录将被忽略)

    我在那里添加了src/main/deploy/package/macosx/myapp.ico,它最终成功了:)

    给你:

    创建src/main/deploy/package/macosx/文件夹 添加名为${project.build.finalName}.ico的图标 运行mvn jfx:构建本机 我还没有广泛使用它-只是让它工作并想与大家分享。因此,如果你想使用不同名称的图标,我不知道如何使用。至少还没有。配置部分中的…部分似乎是用于webstart的,所以我没有使用它。希望你能让它工作


    回答与

    相同,感谢您的建议,但仍然不起作用,我们正在使用调试日志中“/Users/Mac-5/flight planner/src/main/deploy/logoIcon.ico”处的图标文件获取[DEBUG]。图标仍然无法更改。您能为该问题提出解决方案吗?
    <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>