12

按照此处此处的说明进行操作。我正在使用JDK 7u9NetBeans 7.2.1。我所做的是创建相对于我的项目根文件夹(C:\Users\Administrator\Desktop\icotest\package\windows\icotest.ico)的整个路径。我尝试了 48x48 和 256x256 尺寸。这是我名为icotest的项目的树概述:

│   build.xml
│   manifest.mf
│
├───build
│   │   built-jar.properties
│   │
│   ├───classes
│   │   └───icotest
│   │           Main$1.class
│   │           Main.class
│   │
│   ├───empty
│   └───generated-sources
│       └───ap-source-output
├───dist
│   │   icotest.html
│   │   icotest.jar
│   │   icotest.jnlp
│   │
│   └───web-files
│           dtjava.js
│           error.png
│           get_java.png
│           get_javafx.png
│           javafx-chrome.png
│           javafx-loading-100x100.gif
│           javafx-loading-25x25.gif
│           upgrade_java.png
│           upgrade_javafx.png
│
├───nbproject
│   │   build-impl.xml
│   │   genfiles.properties
│   │   jfx-impl.xml
│   │   project.properties
│   │   project.xml
│   │
│   ├───configs
│   │       Run_as_WebStart.properties
│   │       Run_in_Browser.properties
│   │
│   └───private
│       │   private.properties
│       │   private.xml
│       │
│       └───configs
│               Run_as_WebStart.properties
│               Run_in_Browser.properties
│
├───package
│   └───windows
│           icotest.ico
│
└───src
    └───icotest
            Main.java

这就是build.xml的样子:

<target name="-post-jfx-deploy">
    <fx:deploy verbose="true" nativeBundles="exe" outdir="${basedir}/${dist.dir}" outfile="${application.title}">
        <fx:application name="${application.title}" mainClass="${javafx.main.class}"/>
        <fx:resources>
            <fx:fileset dir="${basedir}/${dist.dir}" includes="*.jar"/>
            <fx:fileset dir="${basedir}/${dist.dir}" includes="lib/*.jar"/>
        </fx:resources>
        <fx:info title="${application.title}" vendor="${application.vendor}"/>
        <fx:preferences shortcut="true"/>
    </fx:deploy>
</target>

无论我做什么 - 我仍然在dist 构建过程(激活ISS)中收到此消息,并且在相应的build.xml文件中将调试标志设置为true:“使用默认包资源 [应用程序图标](添加包/窗口/icotest.ico 到要自定义的类路径)”

知道我可能做错了什么吗?谢谢你。

4

2 回答 2

16

经过反复试验并使用 XXL 答案,我发布了一种更清晰的方法,将您的自定义图标添加到 JavaFX 自包含中。顺便说一下,我正在使用 Netbeans 7.3 JDK 1.7u17 1. 首先在项目 src 目录中的文件夹(与项目同名)中创建一个名为 package 的文件夹。

赢 2. 在文件夹包下,创建文件夹 windows,这是您放置自定义图标的位置。请确保 .ico 文件的名称与应用程序名称相同 在此处输入图像描述 注意:这可以通过创建 netbeans 轻松完成一个新包,但由于某种原因,netbeans 不允许您将新包命名为“包” 在此处输入图像描述

  1. 接下来,将包含 /package/windows/.ico 的目录添加到 Ant clathpath 属性 在此处输入图像描述
  2. 清理并构建您的项目,最终输出将与您的自定义图标类似 在此处输入图像描述
于 2013-04-22T19:44:20.393 回答
11

在这里找到了答案 。看来,Oracle 网站上发布的指南目前与可用的实际部署方案不匹配。也就是说,在处理NetBeans时,ant不知道假定为您的根项目的当前目录。正如相应论坛主题中所建议的那样 - 只需将包含“package/windows/${projectname}.ico”的目录添加到ant的类路径中,它就会获取相关资源,即使教程声称这应该由于现有的 ( ? ) 添加了'.'而自动发生 到构建脚本。

去做

于 2012-12-04T10:39:02.087 回答