So this error is a weird one...
I'm using EXE4J 6 to build a .exe file for my JavaFX Application. This has worked with no issues through Java version 13.0.1. I recently upgraded my environment to use Java 14.0.1 and now I get the following stacktrace whenever I try to run my application through exe:
java.lang.RuntimeException: Exception in Application start method
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.InternalError: platform encoding not initialized
at java.base/java.net.Inet6AddressImpl.getLocalHostName(Native Method)
at java.base/java.net.InetAddress.getLocalHost(Unknown Source)
at org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:54)
at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:612)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691)
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708)
at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:243)
at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
at org.apache.logging.log4j.LogManager.getContext(LogManager.java:174)
at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:669)
This error happens when trying to initialize my Log4J logging. however if I just made a direct call to InetAddress.getLocalHost() I can replicate this error out of .exe. Running my application directly out of my Eclipse (EE 06/2020) works just fine. After doing some debugging. I determined that removing Java from my PATH allowed the application to run. My .exe4j configuration file is set up so that the application should look for a separate Java 14 jre and not attempt to use my PATH for java.
<searchSequence>
<directory location="../java/jre64" />
</searchSequence>
The jre64 is built through ANT using the 14.0.1 jdk that I have and only importing the modules I need. Again, this all worked through 13.0.1 prior to my upgrade to 14.0.1
From research and testing on other computers, I think this boils down to an environment issue on my computer. However I've run out of places to look. Any thoughts or ideas would be much appreciated. Specifically why EXE4J would try to use the Java on my Path instead of the one in the search sequence.
Other Notes:
Running on Windows 10 Latest Updates
Path points to OpenJDK 14.0.1 (causes break) (java -version is correct in cmd)
I've confirmed that the working exe, after removing java from my Path, is still running on version 14.0.1 through the jre64
Application is built with and Eclipse Workspace/project JRE also points to same OpenJDK 14.0.1
Running on other computers with similar versions & environment works & doesn't cause this issue.
I was finally able to determine what the issue was.
I was using Exe4J 6.0 which was not compatible with Java versions 10+. I was surprised that I wasn't getting outright errors when trying to run exe4j to compile my executable, however it seems that exe4j was sucking in an older 1.8 java version from my registry and using a 1.8 jdk that I never cleaned out of my "C:/Program Files/Java" folder. When I deleted all my old JDKs, exe4j started complaining about missing a Java VM (even though 14.0.1 was set on path).
Upgrading to Exe4J 7.0 solved the issue for me.
In my case the problem was the PATH environment variable pointing to one jre directory.
I had 2 applications in different directories:
Application A had a jre directory included in the PATH environment variable and was working fine.
Application B had another jre directory NOT included in the PATH environment variable and was throwing this error.
After removing this jre directory from the PATH environment variable everything worked ok.
I got following error while starting the server.
An internal error occurred during: "Publishing to WAS 8559 ...".
Could not initialize class com.ibm.ws.ffdc.FFDCFilter
Eclipse Java EE IDE for Web Developers Version: Mars.1 Release (4.5.1)
IBM WebSphere Application Server for Developers 8.5.5.9
I tried some methods posted in stackoverflow. But it doesn't work.
e.g.could-not-initialize-class-com-ibm-ws-ffdc-ffdcfilter
1.added this entry in eclipse.ini file "-vm C:\Program Files\IBM\WebSphere\AppServer\java\jre\bin\javaw.exe", restarted eclipse and server;
2.Windows->Preferences->Java->Installed JREs
Do you have any suggestion about this problem?
I followed MrSimpleMind's solution and this worked for me. I copied the com.ibm.ws.orb_8.5.0.jar from
C:\Program Files(x86)\IBM\Websphere\AppServer\bin\ProfileManagement\eclipse64 to C:\lib. The only thing I did differently and just to be on the safe side was to update the eclipse.ini in all locations where I found it. I shut down the eclipse, restarted and the publish worked after this change. Thanks MrSimpleMind
There are some solutions, like upgrading Eclipse, changing to IBM JRE etc.
But the issue is related to the ORB jar that is missing.
The FFDCFilter error can be solved as described in "RMI Connection Type" found in this technote IBM Support page - swg21999577
The com.ibm.ws.orb jar is missing and that causes the FFDCFilter issue. It is the result of using the non-IBM JDK. The reason why this jar is not included as part of WDT is because this jar conflicts with the IBM JDK case.
Solution
copy the orb jar, I think your version might be com.ibm.ws.orb_8.5.0.jar (look in your AppServer folder) to e.g. c:\lib
Add the following line at end of your eclipse.ini -Djava.endorsed.dirs=C:\lib
(You could also copy the orb jar into your java jre endorsed library folder.)
See forum post with more information.
I'm tried to install Websphere application Server Version 6 for one development project, and when I start the installation I got the error message that.
the JVM is not correct and i should start the installation using -is:javahome <Java_home_DIR> Createprpocess ==> failed.
The problem is, at my computer I have the java sdk 1.4.2 installed and java_home is set correctly. The system could not find the file.
What I need to do to solve this problem, or someone knows why I'm getting this message?
WAS Server has own java runtime environment. IBM has own version of JRE and JDK.
All installation packages are referencing to internal JRE.
I'm trying to make a simple web app in IntelliJ by following this tutorial:
http://wiki.jetbrains.net/intellij/Creating_a_simple_Web_application_for_Tomcat_in_IntelliJ_IDEA_12
I believe my Tomcat is installed correctly since I see the tomcat pictures when I go to
http://localhost:8080/
I've followed all the steps up until the part it tells me to run index.jsp, at which point I get the error:
Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: nodename nor servname provided, or not known
I see this in the log:
Application Server was not connected before run configuration stop, reason:
Unable to ping server at localhost:1099
This 1099 comes from the JMX port in Run -> Edit Configurations.
How do I fix this?
To fix this you need add your machine name in the /etc/hosts file to point to localhost(127.0.0.1).
You can find your machine name by running the following command:
$ hostname
macbook-pro
From the output above you know your hostname is "macbook-pro".
Edit "/etc/hosts" file and add that name at the end of line that lists 127.0.0.1
127.0.0.1 localhost macbook-pro
Save the file.
Now you IntelliJ should be able to start your server.
See that the tomcat you are using is compatible with the Java version. For me the issue was Tomcat-9 required Java-8. If you have a older version of Java, you could use Tomcat-7 to test.
I added my hostname to /etc/hosts on localhost.
Added JAVA_HOME
but still it showed the same error. In the console, there was output:
Unable to start as CATALINA_BASE contains a colon (:) character
I solved the problem by going to Edit configurations -> Startup/Connection -> changing CATALINA_BASE value to the tomcat installation folder. Before that, it was
CATALINA_BASE: C:\Program Files\Apache Software Foundation\Tomcat 8.0
which can't be correct on a linux machine ;)
For those who encounter this when you just recently updated IntelliJ (In my case 2019.2).
I am using JBoss server so i tried to run standalone.bat in the command line and I saw the real issue on the console.
It can be different to yours, but in my case I saw:
failure description: "WFLYSRV0137: No deployment content with
And on that error I was able to fix this by removing the items (war or ear) inside the <deployments/> node in my standalone.xml
Hope this helps for those using JBoss+IntelliJ
FYI Under certain network conditions your hostname may change or be incorrect. If you are on a mac the following will let you set your hostname fairly permanently:
sudo scutil --set HostName correct-name
This appears to be a problem with the way mac is handling reading the /etc/hosts file. See for example http://youtrack.jetbrains.com/issue/IDEA-96865
Adding the hostname to the hosts file as bond described should not be required, but it does solve the problem.
My problem was that tomcat 8 and higher are not compatible with java 6. Changing to java 7 solved it.
I had similar issue when I entered very big port here:
But when I corrected it to something smaller which is in offset range:
Issue was resolved.
I had same problem. In "Edit Configurations.." -> "Tomcat Server" I changed JRE from "Default" to my current version with SDK directory address (like C:\Program Files\Java\jdk1.8.0_121\jre)
My Tomcat version is 8.5.31
This error came to me when I configured (wrong) 3 Gb memory where there was none. IntelliJ does shows the real error message (Could not reserve enough space for object heap) in the Output frame.
I was confused, and attracted by the message in the Event Log, which is to be ignored in this case.
None of the answers above worked for me. In the end I figured out it was an configuration error (I used the android SDK and not Java SDK for compilation).
Got to
[Right Click on Project] --> Open Module Settings --> Module --> [Dependendecies] and make sure you have configured and selected the Java SDK (not the android java sdk)
I meet this question when i use intellij 15.0,then i update to 15.02 version. after that, I edit configurations and reset the Default JRE to my own JRE.It works well for me;
I added the following VM Options and it worked for me:
-Dcom.sun.management.jmxremote=
-Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
I solve this problem adding the environment variables JAVA_HOME(C:\Program Files\Java\jdkx.x.x_xx) and JRE_HOME.
I had the same problem of "Unable to ping server at localhost:1099" while I was using intellij 2016 version.
However, as soon as I upgraded it to 2017 version(Ultimate 2017.1) which is installed using "ideaIU-2017.1.exe" the problem disappeared.
I had this issue when running Tomcat 6.0.53 on Mac OS Sierra with Intellij IDEA to deploy Spring projects.
This problem was solved after changing the Tomcat version to the 'tar.gz' one from official site. It seems the 'zip' one is for windows.
Setting project's SDK in IntelliJ (File > Project Structure > Project:Project SDK) worked for me
If your tomcat contains file setenv.sh ([YOUR_CATALINA_HOME]/bin/setenv.sh) it may redefine the JAVA_OPTS variable that JIdea uses to set up JMX, so you have to add them there:
export JAVA_OPTS ="$JAVA_OPTS <whatever was in setenv.sh>"
echo $JAVA_OPTS
Below is the error I observed :
to resolve, in my case, I exit intelliJ and renamed folder ".idea" to ".idea_old" (so that I don't loose old config) and restarted intelliJ, It created a new ".idea" folder and I provided new tomcat configuration. On running tomcat this issue was removed.
On top pointing my hostname to 127.0.0.1 in hosts (just run hostname in cmd to get it) as well as doing what David GC mentioned, for me the error cleared and debugging worked when I went into the tomcat configuration and changed the debugging startup script from startup.bat (which was just my monkeying around) back to the catalina.bat start default.
I had same issue and my mistake was, I was trying to start tomcat server with incompatible version of JDK and installed Apache tomcat server. In my case I had installed JDK 7 with Apache tomcat 9. For Apache 9 JDK should be >= 8.
For compatibility check this https://tomcat.apache.org/whichversion.html
For me, it was a much different solution since it was running on a virtualbox, so I had to edit the hosts file and add the virtualbox as a localhost
127.0.0.1 VirtualBox-blahblah
In windows environment just check the PATH environment variable if Oracle JRE runtime refreshed the path and put himself at the very beginning of the path. In this case even if the JAVA_HOME AND JRE_HOME points to the correct JDK, the JRE will have precedence. And this case IntelliJ will not start Tomcat instance with the mentioned error message.
If you are using java 7 then make sure you have Tomcat 7
brew install tomcat#7
and update run configuration to Tomcat 7
Tomcat 9 is working with java 8
I'm leaving an answer for the jboss user.
If any of the people experiencing this error are using jboss, make sure the JBOSS_HOME location is correct.
If we have the installed the compatible tomcat version for the application JAVA jdk version, we can resolve this issue easily.
In my case, when I am using Tomcat 10.1.0.M4 with JAVA JDK 1.8 I faced this issue. When I downgrade my tomcat version to 9.0.41, the issue resolved for me.
You can find the compatible tomcat version for the JAVA JDK here..
http://tomcat.apache.org/whichversion.html
I use;
Windows 7 64 bit,
JAVA_HOME= JDK1.7 64 bit,
Tomcat-7 64 bit version
When I start tomcat from commandline it works ok, but when I use it within IntelliJ I get this error;
java.lang.UnsatisfiedLinkError: tcnative-1 (.\tcnative-1.dll is not a valid Win32 application.
I also point to an IBM 32bit JDK1.6 from IntelliJ in project settings, but this could not be a problem since this setup works on some other collegae's computers
I have read similar questions here, but none of them offers a solution for my case, any ideas, how can I fix this?
Here is a link which describes the problem :
Cause:
You get this message when you start Tomcat. Tomcat is looking for a shared object call tcnative (dll or so depending on the platform). If it doesn't find it, it'll revert to java libs. Either way, this shouldn't affect your application. tcnative dll is needed to address scalability in Tomcat.
Solution:
Turn down debugging level for Tomcat or
Get tcnative from http://tomcat.apache.org/native-doc/ (windows users can download the binary) and place it in your library path.
Lib path is usually: C:\Program Files\Apache Software Foundation{Apache Tomcat directory}\lib; for windows
Basically It seems that you may have an incorrect version.
Are you using multiple java on your machines if yes then try to look into environment variables for JAVA_HOME & PATH. Secondly, also paste the complete version of java and tomcat
Also run following commands at command prompt
java -version
javac -version
echo %JAVA_HOME%
And are you using MSI installer of tomcat or just a zip version of tomcat. Because in many cases MSI installer never work for some ghost reasons.