gpt4 book ai didi

node.js - 使用express框架和node.js时运行时出现java.lang.NoClassDefFoundError

转载 作者:太空宇宙 更新时间:2023-11-04 01:03:18 25 4
gpt4 key购买 nike

我正在尝试编写示例代码来创建 java 类的实例,然后使用该实例调用方法。我正在使用 node-java 模块来执行此操作。代码编译没有任何错误。然而,当我点击实际点击相同代码的 URL 时,我会得到类未找到异常。

我已经验证该 jar 与 index.js 位于同一目录中,并且该 jar 还包含为其创建实例的类文件 (Application.class)。

我的index.js文件

var java = require("java");
java.classpath.push("demo.jar");

var express = require('express');
var router = express.Router();
var Application = java.import('Application');

/* GET home page. */
router.get('/', function(req, res) {
var application = new Application();
var resp = application.getResponse();
res.render('index', { title: resp });
});

module.exports = router;

最佳答案

抱歉我的英语不好。我有同样的问题。看[https://github.com/joeferner/node-java/issues/147]我的代码:

`var java = require("java");
var path=require("path");
var fs=require("fs");
console.log("ruta in directory",path.join(__dirname));
console.log("exist file:",fs.existsSync(path.resolve(__dirname,"./lib-java/lib-tgd.jar")));
java.classpath.push("commons-lang3-3.1.jar");
java.classpath.push("commons-io.jar");
java.classpath.push(path.resolve(__dirname,"./lib-java/lib-tgd.jar"));
java.classpath.push(path.resolve(__dirname,"./lib-java/jackson-annotations- 2.5.1.jar"));
java.classpath.push(path.resolve(__dirname,"./lib-java/jackson-core-2.5.1.jar"));
java.classpath.push(path.resolve(__dirname,"./lib-java/jackson-databind-2.5.1.jar"));`

用path.resolve解决文件路径的问题

关于node.js - 使用express框架和node.js时运行时出现java.lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25242449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com