Eclipse fails to start via an application launcher - java

Hi everybody.
The problem: elcipse-3.5.0 (Galileo) spits with an error when I try to launch it by clicking its launcher. The curse sound like this:
A Java Runtime Environment (JRE) or
Java Development Kit (JDK) must be
available in order to run Eclipse. No
Java virtual machine was found after
searching the following locations:
/home/emanemos/bin/eclipses/eclipse-3.5.0/jre/bin/java
java in your current PATH
However, everything goes smoothly when eclipse is started from console.
Before installing eclipse I've installed jdk1.6.0_16. I also created the $JAVA_HOME variable and changed my $PATH:
$ echo $JAVA_HOME
/usr/lib/java/jdk1.6.0_16
$ echo $PATH
/home/emanemos/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/java/jdk1.6.0_16/jre/bin
So that, my terminal got to know what java is:
$ java -version java version
"1.6.0_16" Java(TM) SE Runtime
Environment (build 1.6.0_16-b01)
Java HotSpot(TM) Client VM (build
14.2-b01, mixed mode, sharing)
Then a folder eclipse was extracted from .tar.gz package under the directory ~/bin/eclipses. I changed the folder's name eclipse to eclipse-3.5.0 and changed $PATH again:
$ echo $PATH
/home/emanemos/bin/eclipses/eclipse-3.5.0:/home/emanemos/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/java/jdk1.6.0_16/jre/bin
From this moment I was blessed to launch eclipse from console by the command eclipse.
However, I feel desperate about using the eclipse's application launcher.
Thanks in advance. I would be grateful for any help.

The message says "No Java virtual machine was found after searching the following locations: /Applications/eclipse/Eclipse.app/Contents/MacOS/jre/bin/"
I have solved it creating the folder /Applications/eclipse/Eclipse.app/Contents/MacOS/jre/bin and linking to the command at /usr/bin/java:
ln -s /usr/bin/java /Applications/eclipse/Eclipse.app/Contents/MacOS/jre/bin/java

Add this to eclipse.ini:-
-vm
$Java_home/jdk1.5.0_14/bin/javaw.exe

I could be off, but it looks to me that you don't have JAVA in your path. If you notice, you had to add it via the echo command. However, that only stays for that session of the terminal. You don't permanently affect the system. (I believe that's why you can launch from the terminal, but not via the launcher.)
Do you have the Java JRE actually installed on your system? If not, I would recommend doing that as that should do all the setup that you would need, then try running Eclipse again.
Edit: I noticed you said that you did install the 1.6 JDK. This should have fixed your problem. If Java is not in your path when you first open up your terminal, then that (I believe) is your real problem and you may need to do a reinstall or troubleshoot there.

(Making a big assumption that you're on Linux using X)
If you've installed the Java JRE without logging out and back in to the X session, the environment the session is in won't contain the $JAVA_HOME variable. It may just be a case of logging out and back in in order to get a new X session.
If you want to keep the same session running, you could try it out by pressing Ctrl+Alt+F9 to start another GUI session.

Fazil Baghirzade i solve the this problem
A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations:
c:\Program Files\Eclipse\jre\bin\javaw.exe 'javaw.exe' in your current path
go to the "C:\Program Files\Java\jdk1.6.0_39" in this folder have "jre" folder copy it and paste the eclipse folder
thats all!!!

Related

Cannot set up SDK for IntelliJ Idea

I am beginner in linux (running Linux Mint 18.3), and trying to set-up my environment for Java development. I've done this several times on my Windows machine, and it always worked, but couldn't make it work for linux.
Running command java-version returns the following:
openjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-0ubuntu0.16.04.2-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)
Still, when I open IntelliJ, it says that Project SDK is not defined. When I am trying to set it up to the folder /usr/lib/jvm/java-8-openjdk-amd64/jre/bin (being the location I found digging into my filesystem starting with command whereis java) it says that "The selected directory is not a valid home for JDK". I've added manually the path also to $JAVA_HOME and '$PATH' but the problem persists.
The path you posted says "jre" in it, you need the JDK.
You need shoose JDK path
without BIN folder, like D:\java\jdk\jdk1.8.0_162

Launching SOAP UI via terminal not working, gives "java; not found"

I have downloaded java8 and then created a folder "java" in "/usr/local". Later I set the JAVA_HOME and PATH using export.
echo $JAVA_HOME output /usr/local/java/jdk1.8.0_20
Now, when I open terminal and type java -version it prompts to choose any package from below to install java. But when I do $JAVA_HOME/bin/java -version it gives
java version "1.8.0_20-ea"
Java(TM) SE Runtime Environment (build 1.8.0_20-ea-b23)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b22, mixed mode)
and when I run
sh /home/SOAPUI_HOME/soapui-4.0.1/bin/soapui.sh gives
================================
=
= SOAPUI_HOME = /home/SOAPUI_HOME/soapui-4.0.1
=
================================
/home/SOAPUI_HOME/soapui-4.0.1/bin/soapui.sh: 141: /home/SOAPUI_HOME/soapui-4.0.1/bin/soapui.sh: java: not found
SoapUI doesn't use JAVA_HOME in its launcher .sh files. You could add /usr/local/java/jdk1.8.0_20/ before java on line 141 (if you are using SoapUI 4.0.1, but I would suggest to upgrade to 5.0.0, then it's line 72).
Another solution would be to to make sure your java installation is the PATH variable.
Third, and easiest in my opinion, is to download the installer version of SoapUI. It is a .sh file which installs both SoapUI and Java.
I turned off the Internet Connection, because in the logs I saw many HttpConnection errors. Launch SOAP UI from terminal
sh /Applications/SoapUI-5.1.3.app/Contents/java/app/bin/soapui.sh
and then turn on the internet again.
When I want my systems Java version to overrule the SoapUI Java version, I rename the jre folder within the soapUI folder to temp or whatever. After that SoapUI picks up the Java version that you are running on your system.

I have different versions of javac and java. I'm trying to run my .java file on terminal. But it works in eclipse

How to resolve this? I can compile it but I can't run it. I have different versions of javac and java. I'm trying to run my .java file on terminal. But it works in eclipse. I know that version affects this. How to upgrade javac? Will it affect my eclipse if I do so? Thanks. ;)
[clemjon#localhost ~]$ javac -version
javac 1.6.0_20
[clemjon#localhost ~]$ java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Server VM (build 17.0-b16, mixed mode)
This is not an issue to do with different versions of javac and java. The problem here is that you are attempting to run a class file whose fully-qualified name (com.pl.casestudy.First) doesn't match the class name you passed to java (First). You would get the same error if you had the same versions of javac and java.
If you have a class whose name is com.pl.casestudy.First, Java will look for it in a file with name com/pl/casestudy/First.class (Windows users feel free to reverse the direction of the slashes.) So you will need to run your First class from the directory that contains the com subdirectory. I can see from the shell prompt in your stacktrace that you have a directory named casestudy, I'll assume that the com and pl parent directories also exist. Eclipse has probably created them for you.
Try cding out to the directory that contains com, compiling using
javac com/pl/casestudy/First.java
and running using
java com.pl.casestudy.First
Check which JRE eclipse is using:
Window->Preferences->Java->JREs
Right click the selected one and Edit.
The JRE home path should be there. Add that path to your path environment variable (instead of the one that is already there) and that should do the trick for you.
You can also set which JDK version you want Eclipse to compile to:
Window->Preferences->Java->Compiler
My best advice would be to keep track of all the installed JDK's and JRE's.
Choose the ones you want to use by default and add those to your JAVA_HOME and Path environment variables; Then setup your Eclipse to the same values using the steps above.
Then if for a particular project you need to use a specific JRE, right click on that project and then go to BuildPath->Libraries->JRE
Library->Edit and pick you JRE.
Disclaimer: I'm not on my dev machine right now so the names may be approximate. :)

How to locate my java jdk folder and edit the path variable - integration maven

i have Windows Vista and i'm trying to install maven and test it.
But i realised that i have a problem with JAVA and i have to solve first.
I do Start->Run->cmd
and i type in the command line,
C:\>mvn clean
i get the following error
ERROR: JAVA_HOME not found in your environment.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation
So i say: Let's set the PATH for Java and i did:
Start->Control Panel->System->Advanced System Settings->Environment Variable->System Variables
Edit the PATH variable
C:\Program Files\Java\jdk1.6.0_32;C:\apache-maven-3.0.4\bin;
But then i get the same error when i do:
C:\>mvn clean
Then i typed in the cmd prompt:
C:\>java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b11)
and i realise that the Java version that is running is not located under the
"C:\Program Files\Java" directory
The only JDKs i have are:
jdk1.6.0_29
jdk1.6.0_32
Then i did Run->cmd
C:\>where java
C:\Windows\System32\java.exe
(Recently i downloaded IDE Eclipse and IDE IntelliJ and i don't know if these apps
come with the JDK).
Where can i find my JDK installation in Windows and set the path in environmental variables?
Go to
Start->Control Panel->System->Advanced System Settings->Environment Variable->user variables
Click on new button
give the
variable name : JAVA_HOME
variable value: C:\Program Files\Java\jdk1.6.0_32
in that way you setup your java home and try
Also make sure to take new command prompt after you did any changes in environment variables
Eclipse comes bundled with a JDK, I believe you need a seperate one to run maven.
My environment variables look like this.
JAVA_HOME = C:\Program Files\Java\jdk1.6.0_33
Path = (tacked on the end) ;%JAVA_HOME%\bin;C:\Program Files\Spring Tools Suite\apache-maven-3.0.3\bin
This is all working but as you can see I got maven by installing STS. It's just an eclipse distro which comes bundled with maven (among other things).
You can also set java home from command line prompt. But this will be valid only in your session and it will be gone once you close your command line session.
Hope it helps.
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_33
Late to the game, but run this in an elevated command prompt:
setx /M JAVA_HOME "path_to_Java"
This will set the path for your machine and not the user. Remove /M to have it set just for the user account.
The guide at SS64 (and setx /?) say you're supposed to have the /M switch at the end, but my personal experience is that it doesn't always work at the end.

"Could not find the main class. Program will exit"

I'm trying to run SQuirreL SQL.
I've downloaded it and installed it, but when I try to run it I get this error message:
Java Virtual Machine Launcher.
Could not find the main class.
Program will exit.
I get the gist of this, but I have not idea how to fix it. Any help?
more info:
I'm on Windows XP pro.
I have java 1.6 installed, and other apps are running OK.
The install ran OK.
I believe I've followed the installation instructions correctly.
To run it, I'm invoking the squirrel-sql.bat file.
Update
This question: "Could not find the main class: XX. Program will exit." gives some background on this error from the point of view of a java developer.
Is Java installed on your computer? Is the path to its bin directory set properly (in other words if you type 'java' from the command line do you get back a list of instructions or do you get something like "java is not recognized as a .....")?
You could try try running squirrel-sql.jar from the command line (from the squirrel sql directory), using:
java -jar squirrel-sql.jar
The classpath is the path that the system will follow when trying to find the classes that you're trying to run. In the batch file you're trying to execute it probably has a variable like CLASSPATH=blah;blah;etc or a java command that looks similar to
java -classpath "c:\directory\lib\squirrel-sql.jar" com.some.squirrel.package.file
If you can find or add that classpath setting, make sure that it includes a path to the squirrel-sql.jar and any other jar files that it may depend on separated by semicolons (or the root /lib directory that may be included with the installation).
Basically you just need to tell java where to find the class files that you're trying to execute. Wikipedia has a more indepth discussion about classpath and can offer you more insight. http://en.wikipedia.org/wiki/Classpath_(Java)
JAVA_HOME variable must be set, to point to the prog files/java/version???/bin
open squirrel-sql.bat file with some text editor and see if the JAVA_HOME variable there is the same as the one in your enviroment variable
change it if it doesn't match....and than run bat file again
Have you followed these instructions:
http://www.squirrelsql.org/#installation
If so, are you running the batch file or the shell script to run it?
Tweaking MB's answer for windows, will get rid of the console window:
start javaw -jar squirrel-sql.jar
The .bat file does not seem to work.
Just double-click on:
squirrel-sql.jar
or type:
java -jar squirrel-sql.jar
in the command-line.
You can place .; in classpath in environmental variables to overcome this problem.
I tried to start SQUirrel 3.1 but I received a message stating "Could not find the main class Files\Rational\ClearQuest\cqjni.jar" I noticed that C:\Program Files\Rational\ClearQuest\cqjni.jar is in my existing classpath as defined by the Windows environment variable, CLASSPATH.
SQUirrel doesn't need my existing classpath, so I updated the SQUirrel bat file, squirrel-sql.bat.
REM SET SQUIRREL_CP=%TMP_CP%;%CLASSPATH%
SET SQUIRREL_CP=%TMP_CP%
It no longer appends my existing classpath to its classpath and runs fine.
I had this problem when I "upgraded" to Windows 7, which is 64-bit. My go to Java JRE is a 64-bit JVM. I had a 32-bit JRE on my machine for my browser, so I set up a system variable:
JRE32=C:\Program Files\Java\jre7
When I run:
"%JRE32\bin\java" -version
I get:
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)
Which is a 32-bit JVM. It would say "Java HotSpot(TM) 64-Bit" otherwise.
I edited the "squirrel-sql.bat" file, REMarking out line 4 and adding line 5 as follows:
(4) rem set "IZPACK_JAVA=%JAVA_HOME%"
(5) set IZPACK_JAVA=%JRE32%
And now everything works, fine and dandy.
I had the same issue with a different application (BI Publisher) because I installed a 32 bit version of this application on a 64 bit version of Windows.
Java Virtual Machine Launcher - could not find the main class
The solution for my case was to tell BI Publisher where to find the x86 version of JRE:

Categories