【问题标题】:Link Dynamic library to Netbeans Platform Project将动态库链接到 Netbeans 平台项目
【发布时间】:2019-04-26 19:44:27
【问题描述】:

对不起,如果这是一个初学者问题,但我试图解决这个问题好几个小时都没有成功。

我在获取平台 netbeans 项目(包含多个模块套装)以在 Ubuntu 或 Mac 中运行时遇到问题。

在 Ubuntu 18.04 中,如果我从启动器运行项目,则会引发与缺少动态库相关的错误。我试图将缺少的库路径添加到系统中,例如.bashrc 但这部分解决了问题。该项目现在只有在我从终端启动 netbeans 时才会运行。

我尝试全局添加路径,例如在 /etc/ld.so.conf.d 中,但这不起作用。

在 Mac OS 中也会发生同样的错误,但从终端启动 netbeans 并不能解决问题。

同样的 netbeans 平台项目没有添加动态库的属性或选项,例如.so 文件。

【问题讨论】:

  • 您可以在 .profile 中设置环境变量,而不是 .bashrc 在 Ubuntu 注销并重新登录时,它应该在不从终端运行的情况下进行设置。您还可以编辑 netbeans 用于启动的脚本。
  • 听起来像你 linked 好的,但是 dyld 在启动时找不到库。您是否使用otool -L /path/to/mac/exec 检查了安装的路径?
  • 感谢您的 cmets。我尝试了 .profile 但效果不佳。我现在无法访问 mac,所以我将在下周尝试 mac 评论。
  • 感谢您的评论。它仍然无法在 Ubuntu 中运行。你说的执行是什么意思?网豆?该项目通常运行:ant -f path / to / myproject 错误消息:无法为 myproject 加载一个或多个动态库 java.lang.UnsatisfiedLinkError: no myprojectDepsLibJavaJNI in java.library.path
  • 在 ubuntu 中,我必须将库软链接到系统 lib 文件夹:对于 a in \myprojectdeps\lib* ;做 sudo ln -s \myprojectdeps\lib/$a /usr/lib/$a ;done

标签: macos ubuntu netbeans platform


【解决方案1】:

这对我有用:

在 Ubuntu 中:将库软链接到系统 lib 文件夹,例如

 for a in \myprojectdeps\lib* ; do sudo ln -s \myprojectdeps\lib/$a /usr/lib/$a ;done 

在 Mac 中:将库软链接到用户 Java lib 文件夹

   for a in \myprojectdeps\lib* ; do ln -s \myprojectdeps\lib/$a ~/Library/Java/Extensions/$a ;done 

【讨论】:

    猜你喜欢
    • 2011-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    相关资源
    最近更新 更多