【问题标题】:How to specify LD_LIBRARY_PATH (or PATH) for each project in Netbeans?如何为 Netbeans 中的每个项目指定 LD_LIBRARY_PATH(或 PATH)?
【发布时间】:2012-01-29 08:15:05
【问题描述】:

为了加载 .DLL(在 Windows 下)或 .SO(在 Linux 下),我们必须使用环境变量 PATH (Windows) 或 LD_LIBRARY_PATH (Linux)。

我们能找到正确使用 DLL 和 SO 的唯一方法是在启动 Netbeans 之前定义环境变量。

  1. 有没有办法在里面指定那些环境变量 网豆?
  2. 是否可以在项目中指定 特性?这样每个项目都可以有自己的定义。
  3. 有没有办法只附加到这些环境变量而不是覆盖它们?

背景:我们正在开发一个使用 JNI 访问本地库的 Java 程序。反过来,这些本地库访问其他依赖的本地库。因此,仅设置属性“java.library.path”是行不通的,因为我们还需要设置完整的 LD_LIBRARY_PATH(或在 Windows 的情况下为常规 PATH)。

在 Netbeans 之外,应用程序运行良好,因为我们在 shell 脚本中设置了环境变量。

我们不想仅仅将 DLL 或 SO 放在通常的系统目录中,因为我们不想在开发过程中弄乱操作系统安装。此外,我们希望能够灵活地允许任何开发人员简单地从源代码控制 (Mercurial) 获取项目,并让所有相关路径正常工作。

设置environment variables programmatically in Java 的堆栈溢出问题已经存在。但是,我们正在寻找一种不那么骇人听闻的解决方案。

【问题讨论】:

    标签: dynamic netbeans path shared-libraries


    【解决方案1】:

    您可以覆盖 NetBeans 在 build.xml 文件中使用的 Ant 脚本任务(或直接在 nbproject/build-impl.xml 的完整脚本中编辑它,但不推荐)。

    java task 用于run 目标。您可以使用env 参数为将运行JVM 的进程指定环境变量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-18
      相关资源
      最近更新 更多