Java 如何更改Mavenized Netbeans应用程序的图标

Java 如何更改Mavenized Netbeans应用程序的图标,java,maven,netbeans,icons,netbeans-platform,Java,Maven,Netbeans,Icons,Netbeans Platform,我有一个Mavenized Netbeans平台应用程序,并遵循指南创建了它的安装程序 现在我想更改我的应用程序的图标,但我不知道怎么做 我尝试了一些不同的解决方案: 在dirC:\Program Files\NetBeans 8.0\harness和.m2\repository\org\codehaus\mojo\nbm maven-harness\7.3\nbm-maven-harness-7.3.jar中用ReplaceVistaIcon更改图标(这不是一个好的解决方案);安装后,图标返回

我有一个Mavenized Netbeans平台应用程序,并遵循指南创建了它的安装程序

现在我想更改我的应用程序的图标,但我不知道怎么做

我尝试了一些不同的解决方案:

  • 在dir
    C:\Program Files\NetBeans 8.0\harness
    .m2\repository\org\codehaus\mojo\nbm maven-harness\7.3\nbm-maven-harness-7.3.jar中用ReplaceVistaIcon更改图标(这不是一个好的解决方案);安装后,图标返回默认版本
  • 使用Maven的方式;同样的效果
  • 现在,如果用户选择了“创建桌面图标”,我想尝试使用安装程序创建一个.lnk(使用正确的图像),并且我已经按照指南进行了操作,但是我找不到显示
    复选框的窗口

  • 任何解决方案都是可以接受的,重要的是它是有效的,我所做的就是将你所尝试的一切混合在一起

    我确实从线束中通过ReplaceVistaIcon更改了图标。然后我将它们放在Maven Netbeans应用程序中的一个目录中,在我的例子中是
    Application/src/main/resources/binaries
    。之后,我将元素
    binDirectory
    添加到此模块的Maven构建插件的配置中:

    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>nbm-maven-plugin</artifactId>
                <configuration>
                    <brandingToken>${brandingToken}</brandingToken>
                    <etcConfFile>src/main/resources/myconfig.conf</etcConfFile>
                    <binDirectory>src/main/resources/binaries</binDirectory>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
    
    org.codehaus.mojo
    nbm maven插件
    ${brandingToken}
    src/main/resources/myconfig.conf
    src/main/resources/binaries
    

    这就是我的工作方式。我同意,将二进制文件更改为包含正确的图标并不是最干净的方法。如果有人有更好的方法来实现这一点,请告诉我们。

    优秀的解决方案。为我做了这项工作,谢谢帕德

    正如您所说的padde,在对app.exe和app64.exe应用ReplaceVistaIcon更改后(更多解释请参见),我只需要将app.exe和app64.exe从“NetBeans\harness\launchers\”复制到“src\main\resources\”


    我还注意到app.exe和app64.exe的大小与NetBeans 7.3和7.3.1不同。但是在7.3.1和8.0.2之间匹配。我认为我们应该使用NetBeans版本中的app.exe,该版本与我们项目的NetBeans版本相匹配。

    Simple&Grate雅:此解决方案是最好的