How to Fix Java Was Started but Returned Exit Code=1

Sheeraz Gul Feb 23, 2024
  1. Understanding the Java was started but returned exit code=1 Error in Java
  2. Fix the Java was started but returned exit code=1 Error in Java
  3. Conclusion
How to Fix Java Was Started but Returned Exit Code=1

The "Java was started but returned exit code=1" error is a common issue faced by Java developers and users. This error message appears when attempting to execute a Java application or command, indicating that the Java process terminated abnormally.

This article provides a detailed exploration of potential causes for this error and offers comprehensive solutions to address it.

Understanding the Java was started but returned exit code=1 Error in Java

The error message suggests that the Java Virtual Machine (JVM) encountered an issue and exited with a non-zero exit code, signaling an abnormal termination. Various factors can contribute to this error, including issues with the Java code, incorrect configuration, incompatible Java versions, or problems with system resources.

Fix the Java was started but returned exit code=1 Error in Java

The error Java was started but returned exit code=1 is encountered while using Eclipse. This error terminates the currently running JVM by initiating the shutdown sequence.

The reason for this error is that there may be something wrong in the eclipse.ini file. Here is the part of the error message for Java was started but returned exit code=1:

Java was started but returned exit code=1

C:\WINDOWS\system32\javaw.exe
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-Declipse.buildId=v22.0.5-757759
-XX:MaxPermSize=256m
-jar

This error occurs because the Java Virtual Machine path is not correctly given.

To solve this error, follow the steps below:

  • Make sure the JDK is successfully installed on your system.
  • Open the eclipse.ini file from the Eclipse folder and make sure the path of JVM is correct, as given below:
    -vm
    C:\Program Files\Java\jdk-17.0.2\bin\server\jvm.dll
    
  • Make sure the -vm option is before the -vmargs option.

Here is the full setting for the eclipse.ini file:

-startup
plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar
--launcher.library
C:\Users\Sheeraz\.p2\pool\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.400.v20211117-0650
-product
org.eclipse.epp.package.java.product
-showsplash
C:\Users\Sheeraz\.p2\pool\plugins\org.eclipse.epp.package.common_4.22.0.20211202-1200
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
C:\Program Files\Java\jdk-17.0.2\bin\server\jvm.dll
-vmargs
-Dosgi.requiredJavaVersion=11
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-Dsun.java.command=Eclipse
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=11
-Dosgi.dataAreaRequiresExplicitInit=true
-Dorg.eclipse.swt.graphics.Resource.reportNonDisposed=true
-Xms40m
-Xmx2048m
--add-modules=ALL-SYSTEM
-Declipse.p2.max.threads=10
-Doomph.update.url=https://download.eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/

If the error still occurs, try one of the following alternative solutions:

Check Java Version Compatibility

Incompatibility between the Java version specified in the code and the installed Java Runtime Environment (JRE) can lead to the exit code=1 error.

Verify Java Version:

  • Check the Java version specified in the code or build configuration.
  • Confirm that the installed JRE matches the required version.

Update Java:

  • If needed, update the installed Java version to match the specified version in the code.
  • Use a compatible version as required by the application or project. You can download the updated version here.

Review Code and Dependencies

Issues within the Java code or dependencies can trigger the exit code=1 error. Perform a thorough review of the code and associated libraries.

Inspect Code:

  • Review the Java code for syntax errors, logical issues, or problematic configurations.
  • Check for missing or incorrectly implemented dependencies.

Dependency Versions:

  • Ensure that the versions of external libraries and dependencies are compatible with the Java code.
  • Update dependencies to the latest versions if necessary.

Examine Memory Allocation

Insufficient memory allocation or memory leaks can cause the JVM to terminate unexpectedly. Adjusting memory settings can resolve this issue.

Check Memory Settings:

  • Review the memory settings specified for the Java application using options like -Xmx and -Xms.
  • Ensure that the allocated memory is appropriate for the application’s requirements.

Adjust Memory Parameters:

  • Increase memory allocation if the application requires more resources.
  • Experiment with different memory settings to find an optimal configuration.

Inspect System Resources

Resource constraints on the host system can lead to JVM termination. Evaluate system resources to ensure they are sufficient for the Java application.

Check CPU and Disk Usage:

  • Examine CPU and disk usage during the execution of the Java application.
  • High resource utilization may indicate the need for system upgrades or optimizations.

Monitor Network Connections:

  • Evaluate network connections made by the Java application.
  • Network-related issues could contribute to abnormal program termination.

Update IDE and Build Tools

If using an Integrated Development Environment (IDE) or build tools, ensure they are up to date. Incompatibilities or bugs in these tools can contribute to the exit code=1 error.

Update IDE:

  • If the error occurs during development within an IDE, update the IDE to the latest version.
  • Check for IDE-specific updates and patches.

Update Build Tools:

  • If using build tools like Maven or Gradle, ensure they are using the latest versions.
  • Update build tool configurations as needed.

Verify File and Path Configurations

Issues with file access or incorrect file paths specified in the code can result in abnormal termination.

Check File Access:

  • Ensure that the Java application has the necessary permissions to read and write files.
  • Verify file paths specified in the code.

Update File Paths:

  • If file paths are incorrect or relative paths are not resolved correctly, update them accordingly.

Enable JVM Debugging

Enabling Java Virtual Machine (JVM) debugging can provide additional information about the error.

Enable JVM Debugging:

  • When running your Java application, add these options to the command line. For example:

    java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 -jar your_application.jar
    
  • Use a Java debugger tool, such as Eclipse, IntelliJ IDEA, or Visual Studio Code, to connect to the specified port (5005). Most modern IDEs provide built-in support for Java debugging.

Review Debug Output:

  • Once the debugger is connected, you can review the debugging output in your IDE. This output includes information about the application’s execution, breakpoints, and exceptions.
  • Examine the debugger output for any exceptions, errors, or unexpected behavior in the application. The debugger will pause execution when encountering breakpoints or exceptions, allowing you to inspect the application’s state.

Conclusion

The "Java was started but returned exit code=1" error demands a systematic approach to troubleshooting. This article has presented a comprehensive guide exploring various methods such as checking Java version compatibility, reviewing code and dependencies, examining memory allocation, inspecting system resources, updating IDE and build tools, verifying file and path configurations, and enabling JVM debugging.

By following these detailed steps and understanding the possible causes of the error, developers can effectively diagnose and address issues leading to abnormal JVM termination. It’s essential to document each step, leverage debugging tools, and collaborate with the development team to ensure a thorough resolution of the exit code=1 error in Java applications.

Author: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Related Article - Java Error