Jump to content

Recommended Posts

Posted (edited)

Minecraft’s launcher downloads the Java it needs to run, why doesn’t Forge use this pre installed Java instead of requiring end-users to download the same (I assume it’s the same) version themselves?

Edited by Cadiboo
users->end-users

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted

I believe this is because the JRE that Minecraft ships with is

1) Horrifically out of date

2) Not exactly "installed" on the user's system, it's more just extracted into Minecraft's program files, so there are no registry keys or environment variables pointing to it, a program that wants to use it has to already know where it is.

  • Thanks 1

This is my Forum Signature, I am currently attempting to transform it into a small guide for fixing easier issues using spoiler blocks to keep things tidy.

 

As the most common issue I feel I should put this outside the main bulk:

The only official source for Forge is https://files.minecraftforge.net, and the only site I trust for getting mods is CurseForge.

If you use any site other than these, please take a look at the StopModReposts project and install their browser extension, I would also advise running a virus scan.

 

For players asking for assistance with Forge please expand the spoiler below and read the appropriate section(s) in its/their entirety.

Spoiler

Logs (Most issues require logs to diagnose):

Spoiler

Please post logs using one of the following sites (Thank you Lumber Wizard for the list):

https://gist.github.com/100MB Requires member (Free)

https://pastebin.com/: 512KB as guest, 10MB as Pro ($$$)

https://hastebin.com/: 400KB

Do NOT use sites like Mediafire, Dropbox, OneDrive, Google Drive, or a site that has a countdown before offering downloads.

 

What to provide:

...for Crashes and Runtime issues:

Minecraft 1.14.4 and newer:

Post debug.log

Older versions:

Please update...

 

...for Installer Issues:

Post your installer log, found in the same place you ran the installer

This log will be called either installer.log or named the same as the installer but with .log on the end

Note for Windows users:

Windows hides file extensions by default so the installer may appear without the .jar extension then when the .log is added the log will appear with the .jar extension

 

Where to get it:

Mojang Launcher: When using the Mojang launcher debug.log is found in .minecraft\logs.

 

Curse/Overwolf: If you are using the Curse Launcher, their configurations break Forge's log settings, fortunately there is an easier workaround than I originally thought, this works even with Curse's installation of the Minecraft launcher as long as it is not launched THROUGH Twitch:

Spoiler
  1. Make sure you have the correct version of Forge installed (some packs are heavily dependent on one specific build of Forge)
  2. Make a launcher profile targeting this version of Forge.
  3. Set the launcher profile's GameDir property to the pack's instance folder (not the instances folder, the folder that has the pack's name on it).
  4. Now launch the pack through that profile and follow the "Mojang Launcher" instructions above.

Video:

Spoiler

 

 

 

or alternately, 

 

Fallback ("No logs are generated"):

If you don't see logs generated in the usual place, provide the launcher_log.txt from .minecraft

 

Server Not Starting:

Spoiler

If your server does not start or a command window appears and immediately goes away, run the jar manually and provide the output.

 

Reporting Illegal/Inappropriate Adfocus Ads:

Spoiler

Get a screenshot of the URL bar or copy/paste the whole URL into a thread on the General Discussion board with a description of the Ad.

Lex will need the Ad ID contained in that URL to report it to Adfocus' support team.

 

Posting your mod as a GitHub Repo:

Spoiler

When you have an issue with your mod the most helpful thing you can do when asking for help is to provide your code to those helping you. The most convenient way to do this is via GitHub or another source control hub.

When setting up a GitHub Repo it might seem easy to just upload everything, however this method has the potential for mistakes that could lead to trouble later on, it is recommended to use a Git client or to get comfortable with the Git command line. The following instructions will use the Git Command Line and as such they assume you already have it installed and that you have created a repository.

 

  1. Open a command prompt (CMD, Powershell, Terminal, etc).
  2. Navigate to the folder you extracted Forge’s MDK to (the one that had all the licenses in).
  3. Run the following commands:
    1. git init
    2. git remote add origin [Your Repository's URL]
      • In the case of GitHub it should look like: https://GitHub.com/[Your Username]/[Repo Name].git
    3. git fetch
    4. git checkout --track origin/master
    5. git stage *
    6. git commit -m "[Your commit message]"
    7. git push
  4. Navigate to GitHub and you should now see most of the files.
    • note that it is intentional that some are not synced with GitHub and this is done with the (hidden) .gitignore file that Forge’s MDK has provided (hence the strictness on which folder git init is run from)
  5. Now you can share your GitHub link with those who you are asking for help.

[Workaround line, please ignore]

 

Posted
12 minutes ago, DaemonUmbra said:

I believe this is because the JRE that Minecraft ships with is

1) Horrifically out of date

2) Not exactly "installed" on the user's system, it's more just extracted into Minecraft's program files, so there are no registry keys or environment variables pointing to it, a program that wants to use it has to already know where it is.

We’re being forced to use the same JRE anyway though, so we can’t exactly help the out of date part and don’t we already know exactly where it is? 

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted

Note that for programming you also need the JDK...which Minecraft does not autodownload.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted (edited)
2 hours ago, Draco18s said:

Note that for programming you also need the JDK...which Minecraft does not autodownload.

I assume that that’s only for people who are developing mods (& Forge etc.) though, I don’t see why the end-users of Forge & mods need to redownload Java when it appears that Forge could just directly use Minecraft’s Java.

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted

That is exactly the case, The JRE that the Minecraft launcher installs does not actually inform the OS that it's installed anywhere.

So running the jar normally, or through Launch4J has no idea that install even exists.

We are working on a a new exe wrapper that is specifically tailored to Minecraft, and will check the known default Minecraft locations as well as the known installed JREs. 

But that's still in the works and needs a lot more testing.

 

Until then, we're stuck with this.

 

  • Like 1
  • Thanks 1

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Posted

Unpopular opinion but honestly, I would just keep it as-is.

Better to inconvienience users very slightly into downloading an updated Java every few months (which takes like... 15 minutes) than letting them unwittingly use the broken, dangerously unsecure old version Minecraft ships with. If anything, Forge should complain when the Java version is too old.

Security and functionality trumps very, very minor user inconvienience. At least in my eyes.

Posted
1 hour ago, IdrisQe said:

Unpopular opinion but honestly, I would just keep it as-is.

Better to inconvienience users very slightly into downloading an updated Java every few months (which takes like... 15 minutes) than letting them unwittingly use the broken, dangerously unsecure old version Minecraft ships with. If anything, Forge should complain when the Java version is too old.

Security and functionality trumps very, very minor user inconvienience. At least in my eyes.

This isn’t an unpopular opinion at all, it’s a great idea. However, we still have to use (target/retain comparability with) the Java version that Minecraft uses because all their code is written in it. It seems to me that Mojang has fallen down on pretty much everything except for adding features so far. They don’t have a Modding API, lots of their code is badly written, lots of their code is old and should be updated and, as you said, they use a very outdated java version. Also Forge’s Internals use some Java Internals like Sun’s classloader (I think) that only work on specific versions of java (i.e. the version of Java that Minecraft uses). This is why Forge breaks on Java 9 (I think). I also pretty sure that a lot of effort went into making Forge work with Java 9 for 1.13 though.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted
10 hours ago, diesieben07 said:
  • Double clicking the installer jar file will use any system-installed Java, there is no way to change this.
  • The .exe version of the installer uses Launch4j as far as I know, which also uses any system-installed Java.

 

3 hours ago, LexManos said:

That is exactly the case, The JRE that the Minecraft launcher installs does not actually inform the OS that it's installed anywhere.

So running the jar normally, or through Launch4J has no idea that install even exists.

We are working on a a new exe wrapper that is specifically tailored to Minecraft, and will check the known default Minecraft locations as well as the known installed JREs. 

But that's still in the works and needs a lot more testing.

 

Until then, we're stuck with this.

 

Thanks! This is what I was looking for. Any idea why Forge didn’t initially (when it was created) start by using Minecrafts Java though? It seems like it would have been the logical way to streamline the installation for end-users. Then again, Forge probably wasn’t created with end-users in mind who didn’t know how to install Java.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted
55 minutes ago, Cadiboo said:

 

Thanks! This is what I was looking for. Any idea why Forge didn’t initially (when it was created) start by using Minecrafts Java though? It seems like it would have been the logical way to streamline the installation for end-users. Then again, Forge probably wasn’t created with end-users in mind who didn’t know how to install Java.

Minecraft didn't start using there own Java until sometime around the new launcher.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Posted
4 minutes ago, Animefan8888 said:

Minecraft didn't start using there own Java until sometime around the new launcher.

500x353.jpg?1408023055

  • Like 2

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted
7 minutes ago, Animefan8888 said:

Minecraft didn't start using their own Java until sometime around the new launcher.

That makes sense, thanks!

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted
17 minutes ago, Animefan8888 said:

Yes I know, but my phone doesn't agree with me or I'm just typing to fast. And I didn't feel like fixing it.

I've been there.

My tablet doesn't know the word "do"

  • Haha 2

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted

 

10 hours ago, Cadiboo said:

I also pretty sure that a lot of effort went into making Forge work with Java 9 for 1.13 though.

Wait, does 1.13 require Java 9? That will be a headache for anyone wanting multiple instances... Since you'd need Java 8 for a 1.12.2 instance or below, and Java 9 for 1.13+... And Java automatically uninstalls other versions when you install a new one now. Oh boy.

Posted
46 minutes ago, IdrisQe said:

 

Wait, does 1.13 require Java 9? That will be a headache for anyone wanting multiple instances... Since you'd need Java 8 for a 1.12.2 instance or below, and Java 9 for 1.13+... And Java automatically uninstalls other versions when you install a new one now. Oh boy.

I believe that Minecraft (or most of it at least) should work with pretty much any Java >= Java_8u151. However it was designed to work with Java_8u151 (the JRE that it ships with). It does not require any specific Java (except that the Java you use must be compatible with Java_8u151). Forge on the other hand currently requires Java 8 because

10 hours ago, Cadiboo said:

Forge’s Internals use some Java Internals like Sun’s classloader (I think) that only work on specific versions of java

You would have to ask someone else for a concrete reason as to why a lot of work went into making Forge able to use Java 9 (for the 1.13 version of Forge), but here’s my speculation:

- They were already rewriting the entirety of the mod loading system (The Internals that use Java’s (Sun’s) Internals)

- It will allow modders to use new Java features not available in Java 8

- Security patches/upgrades etc.

- Performance patches/upgrades etc.

- Newer versions of software is almost universally better.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Posted

I think I've seen manual Java installation (Not auto-update) prompt for what versions to remove with the new installation, for which deselect all (don't remove any) is an option.

However a new Java version will take over for simple "java" invocations via CLI, so this would require specifying the full path to the outdated Java binary/binaries.

 

Note: I have not installed Java fresh in a long time so your mileage may vary.

This is my Forum Signature, I am currently attempting to transform it into a small guide for fixing easier issues using spoiler blocks to keep things tidy.

 

As the most common issue I feel I should put this outside the main bulk:

The only official source for Forge is https://files.minecraftforge.net, and the only site I trust for getting mods is CurseForge.

If you use any site other than these, please take a look at the StopModReposts project and install their browser extension, I would also advise running a virus scan.

 

For players asking for assistance with Forge please expand the spoiler below and read the appropriate section(s) in its/their entirety.

Spoiler

Logs (Most issues require logs to diagnose):

Spoiler

Please post logs using one of the following sites (Thank you Lumber Wizard for the list):

https://gist.github.com/100MB Requires member (Free)

https://pastebin.com/: 512KB as guest, 10MB as Pro ($$$)

https://hastebin.com/: 400KB

Do NOT use sites like Mediafire, Dropbox, OneDrive, Google Drive, or a site that has a countdown before offering downloads.

 

What to provide:

...for Crashes and Runtime issues:

Minecraft 1.14.4 and newer:

Post debug.log

Older versions:

Please update...

 

...for Installer Issues:

Post your installer log, found in the same place you ran the installer

This log will be called either installer.log or named the same as the installer but with .log on the end

Note for Windows users:

Windows hides file extensions by default so the installer may appear without the .jar extension then when the .log is added the log will appear with the .jar extension

 

Where to get it:

Mojang Launcher: When using the Mojang launcher debug.log is found in .minecraft\logs.

 

Curse/Overwolf: If you are using the Curse Launcher, their configurations break Forge's log settings, fortunately there is an easier workaround than I originally thought, this works even with Curse's installation of the Minecraft launcher as long as it is not launched THROUGH Twitch:

Spoiler
  1. Make sure you have the correct version of Forge installed (some packs are heavily dependent on one specific build of Forge)
  2. Make a launcher profile targeting this version of Forge.
  3. Set the launcher profile's GameDir property to the pack's instance folder (not the instances folder, the folder that has the pack's name on it).
  4. Now launch the pack through that profile and follow the "Mojang Launcher" instructions above.

Video:

Spoiler

 

 

 

or alternately, 

 

Fallback ("No logs are generated"):

If you don't see logs generated in the usual place, provide the launcher_log.txt from .minecraft

 

Server Not Starting:

Spoiler

If your server does not start or a command window appears and immediately goes away, run the jar manually and provide the output.

 

Reporting Illegal/Inappropriate Adfocus Ads:

Spoiler

Get a screenshot of the URL bar or copy/paste the whole URL into a thread on the General Discussion board with a description of the Ad.

Lex will need the Ad ID contained in that URL to report it to Adfocus' support team.

 

Posting your mod as a GitHub Repo:

Spoiler

When you have an issue with your mod the most helpful thing you can do when asking for help is to provide your code to those helping you. The most convenient way to do this is via GitHub or another source control hub.

When setting up a GitHub Repo it might seem easy to just upload everything, however this method has the potential for mistakes that could lead to trouble later on, it is recommended to use a Git client or to get comfortable with the Git command line. The following instructions will use the Git Command Line and as such they assume you already have it installed and that you have created a repository.

 

  1. Open a command prompt (CMD, Powershell, Terminal, etc).
  2. Navigate to the folder you extracted Forge’s MDK to (the one that had all the licenses in).
  3. Run the following commands:
    1. git init
    2. git remote add origin [Your Repository's URL]
      • In the case of GitHub it should look like: https://GitHub.com/[Your Username]/[Repo Name].git
    3. git fetch
    4. git checkout --track origin/master
    5. git stage *
    6. git commit -m "[Your commit message]"
    7. git push
  4. Navigate to GitHub and you should now see most of the files.
    • note that it is intentional that some are not synced with GitHub and this is done with the (hidden) .gitignore file that Forge’s MDK has provided (hence the strictness on which folder git init is run from)
  5. Now you can share your GitHub link with those who you are asking for help.

[Workaround line, please ignore]

 

Posted

On Mac (at least in my experience) new Java versions don’t physically delete or uninstall previous versions, they just change JAVA_HOME and other variables to the new installation, and leave the old installations alone in the JavaVirtualMachines folder. Removing the new installation (& setting JAVA_HOME to the old installation) seems to revert the update.

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

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