java - Netbeans:需要在类路径中包含第 3 方目录

标签 java netbeans classpath netbeans-platform

我们有一个在 NetBeans 中开发的应用程序,基于 NetBeans 平台。我们有一个运行时依赖的第 3 方程序,更具体地说,是其他程序 lib 文件夹中的一个 jar。

我们应该如何将其他程序的 jar 包含在我们的类路径中?

其他程序制造商的建议是设置环境变量 CLASSPATH 以包含

C:\Progam Files\Other Program\lib\theJAR.jar

如果不可能,我们应该将 JAR.jar 复制到 JRE-HOME\lib\ext

我们不能将 JAR.jar 复制到其他地方,这可能会导致它停止工作...

现在 NetBeans 不会注意到环境变量 CLASSPATH 上的内容。他们推荐的方法似乎是制作一个包装器,但这会导致复制 jar,除非有某种方法可以制作指向 CLASSPATH 的包装器模块?

目前我们正在将 jar 复制到 JRE-HOME\lib\ext 中。但是当我们安装一些java更新时就会出现不必要的麻烦。

你有办法解决这个问题吗?看起来似乎很简单,但我还没有找到合适的地方看...

编辑:该应用程序是基于 Ant 的。

最佳答案

摘自模块系统 API 的文档 overview of the runtime infrastructure (页面底部“常见问题和解决方案”部分下):

Q: Can my module add a library JAR to the classpath from outside the IDE [read: platform] installation?...

A: Not easily. You have a few options:

  1. Add an entry to ide.cfg [your app's .config file]. For example:

-cp:a c:\eak\lib\eak.jar This startup file provides the ability to add classpath entries to the IDE's Java invocation.
...

它接着列出了另外两个选项。第二个选项与您提出的解决方案相同。第三种是“对模块进行分区并使用新的类加载器”,我不推荐这种方法,因为我没有这方面的经验(但值得一读)。

假设第一个选项就是您正在寻找的,you will need to add a custom .conf file到您的项目并在 project.properties 文件中指向它,如下所示:app.conf=nbproject/my.conf。这会将您的自定义 .conf 文件添加到应用程序的安装目录中,而不是通常添加的默认配置文件。当然,您需要将 -cp:a c:\eak\lib\eak.jar 条目添加到此自定义配置文件中才能加载 .jar。

在开发过程中,您需要将以下条目添加到project.properties 文件中:run.args.extra=-cp:a c:\eak\lib\eak.jar。这会将命令行选项传递给您的调试实例。

关于java - Netbeans:需要在类路径中包含第 3 方目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11358953/

相关文章:

java - 从 list 文件 java 禁用类路径

java - 如何使用特定参数验证流畅的接口(interface)模拟链

java - ssl_client : raw. githubusercontent.com:证书验证失败:自签名证书

php - 尝试在我的 netbeans php 项目中显示我的产品

maven - 如何设置 mvn exec :exec? 的类路径

java - log4j2 不适用于 JAR

java - 如何使用Java重命名目录中的所有文件?

java - 明星二级Java类

php - Windows,NetBeans : Where's the php. ini?

java - Netbeans - 克隆 bitbucket 存储库的特定分支