java - launch4j和classpath上的外部文件

标签 java gradle launch4j

我正在使用将gradle与launch4j插件一起使用的Java应用程序,以创建Windows exe包装程序。我需要编写一个“帮助”框架来从应用程序内部向用户显示帮助文档,并且我不确定执行此操作的方法,因为类路径中仅有的项目是lib文件夹中的各种jar文件。 。

我计划制作帮助文件的HTML文档,并通过JavaFX WebView控件将这些文档加载到GUI中。考虑到这一点,我在应用程序分发中具有以下目录结构:

root
  |
  + config
  + help
  + lib
  - Application.exe
  - LICENSE

假设我可以按照计划继续进行操作,那么如何仅使用gradle配置脚本(而不是手动编辑launch4j.xml文件)将help和config文件夹放入launch4j的类路径中。如果无法做到这一点,是否还有另一种推荐的方法可以将外部文件包含在类路径中,以便可以使用ClassLoader.getSystemResource()来安全地引用它们?

最佳答案

您应该将help(和config)目录作为资源放入JAR中。为此,将这些目录移动到src/main/resources目录。从那里可以通过getClass().getResource() / getClass().getResourceAsStream()访问它们的内容。

关于java - launch4j和classpath上的外部文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32212705/

相关文章:

java - 如何更改 GWT 的小部件 CSS 值?

java - 将 JList 值从 JFrame 传递到 JDialog

android - 将 Eclipse 项目导入 Android Studio 时出错

java - 无法创建数据库设置的文本文件

java - Launch4J 输入互斥体错误

java - 为什么未在 Java 中输入时显示以下参数?

java - 为什么该行打印两次?

android - 如何更改 Gradle 安装任务

java - Gradle 已弃用 lombok 的注释处理器警告

java - Launch4J - 如何将依赖的 jar 附加到生成的 exe