【问题标题】:Error LNK2001 when installing node-java安装 node-java 时出现错误 LNK2001
【发布时间】:2017-03-30 11:56:51
【问题描述】:

我正在尝试在

上安装 node-java https://github.com/joeferner/node-java
Windows 7 64-bit
JDK 6.45 32bit
MS Visual Studio 2013
node.js v6.9.5 

我收到 LNK2001 错误:

java.obj : error LNK2001: unresolved external symbol __imp_JNI_CreateJavaVM      [C:\Users\seven\workspace\silver\deployment
s\apps\electron-quick-start\node_modules\java\build\nodejavabridge_bindings.vcxproj]
C:\Users\seven\workspace\silver\deployments\apps\electron-quick-  start\node_modules\java\build\Release\nodejavabridge_bindings.node : fatal error   LNK1120: 1 unresolved externals     [C:\Users\seven\workspace\silver\deployments\apps\electron-quick-  start\node_modules\java\build\nodejavabridge_bindings.vcxproj]
 gyp ERR! build error

我做错了什么?谢谢。

【问题讨论】:

  • 你确定它使用的是 32 位 JDK 而不是 64 位 JDK。
  • 是的,我确定(安装 jdk-6u45-windows-i586.exe)
  • @Andrew:这里也一样。你找到解决办法了吗?
  • @SKuijers:不,我没有找到解决方案。我们拒绝在我们的项目中使用 node-java。没有什么是你不会帮助的。

标签: javascript java node.js java-native-interface


【解决方案1】:

我通过安装 32 位版本的 Node 并在重建时将 right arch flag 传递给节点 gyp 设法解决了这个问题。

--arch=ia32

在此之后一切正常。我可以在 Electron 应用程序中成功使用 node-java 库。在开发和打包的应用程序中。之后我面临的问题是 ASAR 压缩以某种方式添加了 ?// 运算符,这导致我无法在其他计算机上使用打包的应用程序:S。

【讨论】:

    猜你喜欢
    • 2018-06-21
    • 2021-05-29
    • 2020-08-16
    • 2019-04-21
    • 1970-01-01
    • 1970-01-01
    • 2019-01-15
    • 2019-01-17
    • 1970-01-01
    相关资源
    最近更新 更多