切换风格

站内搜索

搜索
热搜: 模组 汉化 插件

MCArea

小喇叭+ 发布

NiceMC网易横屏时代正式到来!银河赛季正式开启!
09-20 22:35
Icon爱吃瓜谁说的
09-10 08:40
NiceMC网站是似了吗
09-08 13:45
U17217913483今天人是真的少...
08-29 18:46
NiceMC外包本账号
08-29 12:48
Icon爱吃瓜无聊ing…
08-28 13:01
08-25 20:58
NiceMC万物皆可MC,《黑神话:悟空》也是如此!
08-24 23:00
08-24 16:30
NiceMC全民科技时代正式到来!
08-23 23:06
NiceMCNotePad++作者辱华,请各位服主不要使用!
08-22 15:04
NiceMC网易我的世界【布吉岛】服务器地图泄露!原文地址:https://mcarea.top/thread-157-1-1.html
08-18 22:44
Icon爱吃瓜啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
08-18 11:53
史莱姆汉化组终于可以发小喇叭了,水一个
08-18 10:14
NiceMC↓是的,可以去kkcraft的外纪社区试用
08-18 09:47
Icon爱吃瓜↓确定是科学家专用?
08-18 07:46
NiceMC我的世界辅助(科技)大全震撼发布,原文地址:https://mcarea.top/thread-147-1-1.html
08-17 21:51
Icon爱吃瓜日常发6(1/114514)
08-17 20:31
08-17 20:30
NiceMC↓干脆给你搞个勋章叫“氪金选手”
08-17 20:19

27行代码完美接入forge安装!

  • 打卡等级:常驻代表
  • 打卡总天数:47
  • 打卡月天数:4
  • 打卡总奖励:2602
  • 最近打卡:2024-10-07 12:51:19

44

主题

28

回帖

3437

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3437

100人记录官方100帖记录

发表于 2024-7-9 11:42:51 | 显示全部楼层 |阅读模式
最近在开发我的世界启动器mal的时候需要完成forge安装,于是查阅资料完成了这个小模块。


引用

const forge = require("forge.js"); //替换为实际路径

获得forge列表
let forgeList; // 初始化forge列表
forge.getForgeListByMCVersion("1.12.2") //替换为版本号,不要加分号
.then((e)=>forgeList=e) //成功处理
.catch() //错误处理

下载forge
forge.downloadForgeFile("1.12.2", "14.23.0.2486", function(status,msg){console.log(status,msg)}); //替换为实际的mc版本号和forge版本号
如果status是false就是参数不正确或者第三方跑路,若status为true则msg里面是forge文件的位置

安装forge
用node.js执行命令(测试时直接用cmd)这里应该是要在versions下的游戏文件夹里执行
  1. java -jar forge文件名称.jar nogui -installServer
复制代码
然后forge就被成功安装了!





源码:

const axios = require("axios");
const forge = {};

forge.getForgeListByMCVersion = async(mcVersion)=>{
    try{
        const forgeList = await axios.get(`https://bmclapi2.bangbang93.com/forge/minecraft/${mcVersion}`);
        return forgeList.data;
    }catch{
        return false;
    }
}

forge.downloadForgeFile = (mcVersion, forgeVersion, callback)=>{
    const {exec} = require("child_process");
    const filename = `${mcVersion}-${forgeVersion}-mal.jar`;
    const wgetCommand = `wget "https://bmclapi2.bangbang93.com/forge/download?mcversion=${mcVersion}&version=${forgeVersion}&category=installer&format=jar" -O ${filename}`;
    console.log(wgetCommand);
    exec(wgetCommand, (err, stdout, stderr)=>{
        if (err){
            callback(false, [stdout, stderr]);
        }else{
            callback(true, filename);
        }
    })
}

module.exports = forge;

文件夹内还要放wget.exe哦!

懒得打字嘛,点击右侧快捷回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

论坛
总坛规
社区规定
用户协议
坛史纲要
官方
VApp
联系我们
Bilibili
反馈
Bug反馈
功能申请
论坛活动
论坛公告
功能
陆号聊天室
苹果客户端

手机版

安卓客户端

QQ群

© 2021- MCArea | 由VApp提供技术支持

声明:本网站与微软、Mojang及网易无任何从属关系。