java - 在 node.js 中编译多个 java 文件
问题描述
我试图连续编译 3 个 java 文件。
A.java
B.java
C.java
B.java 在其代码中提到了类 A。
通过使用setTimeout
,我编译了 A 并等待了 10 秒。然后开始编译B。但是,B 有编译错误,
symbol A cannot be resolved.
当我尝试自己在终端中以相同的顺序做同样的事情时,它运行良好,没有任何编译错误。你能告诉我有什么问题吗?
下面是代码段;
const child_process = require('child_process');
/* ... */
function compileThreeFiles(dirPath, req, res) {
child_process.exec(`javac ${dirPath}NodeJsInput.java`, (err) => {
if (err) {
console.log(err);
res.json(resJson);
return;
}
setTimeout(function() {
child_process.exec(`javac ${dirPath}Robot.java`, (err) => {
if (err) {
console.log(err);
res.json(resJson);
return;
}
setTimeout(function() {
child_process.exec(`javac ${dirPath}Main.java`, (err) => {
if (err) {
console.log(err);
res.json(resJson);
return;
}
setTimeout(function() {
executeMain(dirPath, req, res);
}, 10000);
});
}, 10000);
});
}, 10000);
});
}
Robot.java 有一个 NodeJsInput 类的引用,编译器说 NodeJsInput : 找不到符号。
解决方案
推荐阅读
- r - 在 R 中创建 wordcloud 时出错
- c# - 将目标框架从 .NetStandard 2.0 更改为 .net 4.7.2 后无法恢复
- python - 使用 beautifulSoup 从非结构化网页中抓取文本
- sql - 在 UPDATE WHERE 子句 Postgres 10 中使用 JSONB 数组中的属性
- excel - 遍历目录打开每个文件激活表并添加新列
- javascript - Fetch 使跨域请求被阻止
- jquery - jquery if 带有打印样式的语句返回未定义?
- javascript - 无法获取/错误,
- sql - SQL Server 复杂 DateDiff Where 场景
- amazon-web-services - 如何使用 appsync 从 DynamoDB 返回 JSON 对象?