Node.js 将discord.js bot转换为exe
我有一个正在工作的discord bot,但我想将其编译成一个Node.js 将discord.js bot转换为exe,node.js,discord.js,exe,Node.js,Discord.js,Exe,我有一个正在工作的discord bot,但我想将其编译成一个.exe文件。怎么做? 我试图使用pkg和nexe,但两者都没有正确使用。Nexe甚至没有开始给我一些奇怪的错误,这些错误是我在阅读了文档和在互联网上进行了一些讨论后无法修复的。 错误:https://github.com/nexe/nexe/releases/download/v3.3.3/windows-x64-14.8.0 不可用,请使用--build标志创建它,并且错误:vcbuild.bat nosign release x
.exe
文件。怎么做?
我试图使用pkg
和nexe
,但两者都没有正确使用。Nexe甚至没有开始给我一些奇怪的错误,这些错误是我在阅读了文档和在互联网上进行了一些讨论后无法修复的。
错误:https://github.com/nexe/nexe/releases/download/v3.3.3/windows-x64-14.8.0 不可用,请使用--build标志创建它,并且错误:vcbuild.bat nosign release x64已退出,代码为:1
。
pkg
工作得更好,我得到了一个exe
文件,但它似乎不起作用:
我有这个代码,其中bot是我的discord客户端
bot.on('ready', () =>
{
console.log(bot.guilds.cache.toJSON());
bot.guilds.cache.forEach((gui) =>
{
console.log(gui.id + ' ' + gui.name + ' ' + gui.memberCount);
});
console.log('Bot started!');
});
当我使用node index.js
启动它时,它会提供一个服务器,但如果我执行创建的exe
文件,它不会提供任何服务器,尽管bot会联机。
我的package.json
如下所示:
{
"name": "sth",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"pkg": {
"assets": [ "jsons/**/*", "config.json" ]
},
"bin": "index.js",
"author": "",
"license": "ISC",
"dependencies": {
"discord.js": "^12.4.1"
}
}
我做错了什么?为什么机器人启动了,但似乎什么都做不了?我错过了什么?我不知道你可以使用.exe
文件代码,但你可以使用.bat
文件,将其放在桌面上,创建快捷方式,或将其放在shell:startup
上,这样你就可以编写此文件了
@echo off
node "js file path"
你知道当代码不是一个可执行文件时它是否工作吗?是的,正如我在文章中所写的,它工作得很好。现在什么工作?当您运行exe时,控制台窗口是否会出现console.log
s?当我启动.exe
时,我会在控制台中获得令牌的输出(仅用于测试)。它在所有事件之外,代码的第三行。然后我启动了机器人代码>来自ready
事件。但是预期的输出还包括一台安装了bot的服务器。如果我使用node index.js启动bot,它会被输出,但是如果我使用exe