如何从javascript文件(Node.js)启动java文件
您好,我有一个jar文件lavalink,确切地说,它基本上是一个音乐模块,现在我想从我的index.js(主bot文件)启动jar文件,因为我不在财务状况下为lavalink服务器支付单独主机的费用,我想在同一主机容器中启动并使用lavalink服务器 不,我没有在浏览器中运行它,我正在使用discord.js包装器与discord API交互以进行后端程序安装 安装子进程如何从javascript文件(Node.js)启动java文件,javascript,java,Javascript,Java,您好,我有一个jar文件lavalink,确切地说,它基本上是一个音乐模块,现在我想从我的index.js(主bot文件)启动jar文件,因为我不在财务状况下为lavalink服务器支付单独主机的费用,我想在同一主机容器中启动并使用lavalink服务器 不,我没有在浏览器中运行它,我正在使用discord.js包装器与discord API交互以进行后端程序安装 安装子进程npm i子进程这允许您执行shell命令 命令 将exec函数作为命令的第一个参数 exec(“cd~/&java-j
npm i子进程
这允许您执行shell命令
命令
将exec函数作为命令的第一个参数
exec(“cd~/&java-jar Myjar_file.jar
进入jar文件所在的目录cd~/
执行您的jar文件java-jarmyjar\u file.jar
先连续执行前面的命令,然后连续执行后面的命令&&
const { exec } = require("child_process");
exec("cd ~/<path-to-directory-jarFile> && java -jar Myjar_file.jar ", (error, stdout, stderr) => {
if (error) {
console.log(`error: ${error.message}`);
return;
}
if (stderr) {
console.log(`stderr: ${stderr}`);
return;
}
console.log(`stdout: ${stdout}`);
});
const{exec}=require(“子进程”);
exec(“cd~/&&java-jarmyjar_file.jar”,(错误,stdout,stderr)=>{
如果(错误){
log(`error:${error.message}`);
返回;
}
如果(标准){
log(`stderr:${stderr}`);
返回;
}
log(`stdout:${stdout}`);
});
在NodeJS中执行Shell命令:
~/container/src
这项操作的好处是,如果您将项目移动到其他unix系统,它仍然可以工作,并且您不必更新您的路径,但是我需要更改一些内容来让您知道exec(“cd~/&&java-jar-Lavalink.jar“,(错误,stdout,stderr)=>{
如果我添加了cd~/container,它就会被添加到我的容器中,并返回到home/container/container@EliteGaming您更改了什么,~/?如果您认为这有帮助,您可以在向上/向下投票符号下方将其标记为已接受。