Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Where is the .jar file to can start forge server with multicraft panel dedicated server?

Featured Replies

Posted

Hi! I am trying create forge server for minecraft 1.18.1 with forge-1.18.1-39.0.59-installer.jar. I can run on my pc but not on a multicraft dedicated server. Here is the panel and ftp. I need .jar file to start server. Can't use .bat or .sh. How to?

Screenshots:

https://i.ibb.co/2cZZMGZ/Screenshot-1.jpg

https://i.ibb.co/nMP6R2f/Screenshot-2.jpg

Edited by radicalero

  • Author
14 minutes ago, diesieben07 said:

Talk to the makers of the hosting software.

I tried but don't get reply. I am looking for alternatives looking for a .jar file.

On before versions of forge for olders version of minecraft when install forger server the file have a .jar file to start server.

And now not =(

  • 2 weeks later...
  • Author

Hi! I see web I think doing it posible: https://discourse.codeemo.com/t/minecraft-forge-1-18-1-no-targetable-jar/5200

But I don't know how to add this argument to get it working.

@user_jvm_args.txt @libraries/net/minecraftforge/forge/1.18.1-39.0.64/unix_args.txt

Or after it in the post can see a linux command to generate forge with .jar.

This is the code to put into the next function block to copy the jar and update the config with the jarfile and java_tweaks.

        var runPath = `${self.env.cwd}/run.sh`; //set the runPath to location of run.sh
        if(sc.java.jarfile.includes('forge') && sc.java.jarfile.includes('installer') && fs.existsSync(runPath)){ //if the selcted jar has forge and installer in the name and the run.sh exists
          var run = fs.readFileSync(runPath, 'utf8').split('\n').filter(line => line.charAt(0) !== '#' && line !== '')[0]; //read the run.sh and just get the executable line 
          var unixArgsLoc = run.split('@')[2].split('unix_args.txt')[0];
          var unix_args = `@${unixArgsLoc}unix_args.txt`; //get the unix_args.txt location 
          var dir = fs.readdirSync(`${self.env.cwd}/${unixArgsLoc}`).filter(elm=> elm.includes('universal'));
          var universal = `${self.env.cwd}/${unixArgsLoc}${dir[0]}`;
          fs.copyFileSync(universal, `${self.env.cwd}/${dir[0]}`);
          self.modify_sc('java','jarfile',dir[0])
          self.modify_sc('java','java_tweaks',unix_args);
          
        }

The idea of this is that it would run automatically after running a forge installer jar. I just tried it, after running the installer jar, refreshed the page and saw that the java_args bit was there. Clicked start and it booted up.

__

Third option is another callback function in the chain that pretty much does the same thing. I am thinking that separating things into a handler class or separating the functions into separate files or something might be able to reduce the size of the monolith that is mineos.js

function(err,cb){
        // in theory this will only run if the launch jar is forge*installer.jar and the run.sh has been generated. (meaning this could be run multiple times)
        var runPath = `${self.env.cwd}/run.sh`; //set the runPath to location of run.sh
        if(sc.java.jarfile.includes('forge') && sc.java.jarfile.includes('installer') && fs.existsSync(runPath)){ //if the selcted jar has forge and installer in the name and the run.sh exists
          var binary = which.sync('screen');
          var run = fs.readFileSync(runPath, 'utf8').split('\n').filter(line => line.charAt(0) !== '#' && line !== '')[0]; //read the run.sh and just get the executable line 
          var unixArgsLoc = run.split('@')[2].split('unix_args.txt')[0];
          var unix_args = `@${unixArgsLoc}unix_args.txt`; //get the unix_args.txt location 
          var dir = fs.readdirSync(`${self.env.cwd}/${unixArgsLoc}`).filter(elm=> elm.includes('universal'));
          var universal = `${self.env.cwd}/${unixArgsLoc}${dir[0]}`;
          fs.copyFileSync(universal, `${self.env.cwd}/${dir[0]}`);

          self.modify_sc('java','jarfile',dir[0]);
          self.modify_sc('java','java_tweaks',unix_args);
          self.modify_sc('java','java_xmx', '1024');

          cb();
        } else {
          cb();
        }
      }

And other reply it is working.

I don't know how to do any of this options.

____

And I see this tutorial too but don't know how to:

https://www.multicraft.org/site/docs/howto#9.9

Any can help me?

 

Edited by radicalero

  • Author

Help me pls.

Edited by radicalero
I add the info on last post.

  • Guest locked this topic
Guest
This topic is now closed to further replies.

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.