Exit code 1 is Minecraft's generic 'the game died' signal, shown by the launcher when Java exits abnormally during startup. By itself it says nothing about the cause, which is usually a broken or mismatched mod, a corrupted config file, a damaged installation, or the wrong Java version for the build. The actual reason is always written in the game log; the method below finds it.
latest.log in the game's logs folder. The lines just before the crash name the mod or file involved far more often than not.versions and relaunch to fetch a clean copy.With no mods involved, the suspects narrow to a corrupted game file (fixed by re-downloading the version), a broken launcher profile (create a fresh installation in the launcher and test), graphics drivers (update them, especially after an OS upgrade), or an overlay/antivirus interfering at launch. Testing a fresh installation profile is the cleanest experiment, it changes nothing about your worlds, which live in the saves folder, not the installation.
saves folder of your Minecraft directory. Copy them somewhere safe before deleting or reinstalling anything beyond the version folders. Exit code fixes never need to touch saves, and a backup makes every step reversible.
Is exit code 1 a Java problem? Sometimes, but not by default. A wrong Java version produces it, yet on modded installs a mismatched mod is more common. The log distinguishes them in seconds: Java faults mention the runtime, mod faults name the mod.
It worked yesterday and nothing changed. What gives? Something did change, usually quietly: a mod auto-updated, a config was edited by a crash mid-write, or a driver or Windows update landed. The log plus 'what updated last' is nearly always the answer.