JavaFX,can';在导出到*.JAR后,无法在标题栏上显示图标
每次在eclipse中将项目导出到*.jar中时,我都会丢失项目(在eclipse中)中的所有图像。我曾尝试将图像直接放入*.jar,它在其他一些情况下也能工作,但这次不行 加载此图标时的代码片段:JavaFX,can';在导出到*.JAR后,无法在标题栏上显示图标,java,javafx,icons,Java,Javafx,Icons,每次在eclipse中将项目导出到*.jar中时,我都会丢失项目(在eclipse中)中的所有图像。我曾尝试将图像直接放入*.jar,它在其他一些情况下也能工作,但这次不行 加载此图标时的代码片段: primaryStage.getIcons().add(new Image("file:icon.png")); 要处理jar内的文件,需要使用ZipInputStream或JarInputStream要处理jar内的文件,需要使用ZipInputStream或JarInputStream您正在从
primaryStage.getIcons().add(new Image("file:icon.png"));
要处理jar内的文件,需要使用
ZipInputStream
或JarInputStream
要处理jar内的文件,需要使用ZipInputStream
或JarInputStream
您正在从工作目录而不是jar本身加载图像。这就是为什么它在开发中工作,而不是在生产中。如果您将图像移动到jar所在的同一文件夹中,它应该可以工作,但我假设您希望图像包含在jar文件中
将映像移动到您的一个包(任何包,只要它与jar捆绑在一起)。然后您需要访问该图像,为此使用。看起来您正在使用javafx,因此可以使用它来获取图像:
primaryStage.getIcons().add(新图像(ClassLoader.getSystemResourceAsStream(“the/path/to/your/image.png”))
您正在从工作目录而不是jar本身加载图像。这就是为什么它在开发中工作,而不是在生产中工作。如果您将图像移动到jar所在的同一文件夹中,它应该可以工作,但我假设您希望图像包含在jar文件中
将映像移动到您的一个包中(任何,只要它与jar捆绑在一起)。然后您需要访问映像,为此使用。看起来您使用的是javafx,因此您可以使用它来获取映像:
primaryStage.getIcons().add(新映像(ClassLoader.getSystemResourceAsStream(“the/path/to/your/image.png”))
图像图标在项目中的位置?当它工作时,默认为(?)文件夹,存放bin的文件夹,src etcHave运行时您尝试将图像放在与.jar相同的文件夹中?不起作用,sadlyStrange,但无论如何。我已经发布了一个答案,希望能解决您的问题。如果不起作用,请告诉我。图像图标在您的项目中位于何处?当它起作用时,默认情况下(?)文件夹,存放bin的文件夹,src etcHave运行时,您尝试将图像与.jar放在同一文件夹中?不起作用,sadlyStrange,但无论如何。我发布了一个答案,希望能解决您的问题。如果不起作用,请告诉我。这不一定是真的。您可以使用类装入器从工作jar文件中加载资源。如果要从另一个zip/jar文件加载图像,则需要zip/jar流。这不一定是真的。可以使用类加载器从工作jar文件中加载资源。如果要从另一个zip/jar文件加载图像,则需要zip/jar流。非常好!感谢您的回答!非常好!谢谢你的回答!