I've never worked with Maven before and I am following the instructions here. When I run the command
mvn integration-test -Pamp-to-war
It initially downloaded a whole bunch of dependencies, and in the end it showed,
COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
I am on ubuntu 13.04.
If there's anything you want me to tell you, let me know. Thanks.
EDIT
When I do echo $JAVA_HOME
I get /usr/lib/jvm/java-7-openjdk-i386/
When I do mvn -version
I get,
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-openjdk-i386/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.8.0-26-generic", arch: "i386", family: "unix"
Also, I found out this problem faced by someone else. But I am not sure how to go about the solution that is specified?
Further edits.
kraken@kraken-Inspiron-1545:/usr/lib/jvm/java-7-openjdk-i386$ ls -l
total 12
drwxr-xr-x 2 root root 4096 Sep 9 10:44 bin
lrwxrwxrwx 1 root root 41 Jul 4 2013 docs -> ../../../share/doc/openjdk-7-jre- headless
drwxr-xr-x 5 root root 4096 Oct 13 2013 jre
drwxr-xr-x 4 root root 4096 Oct 13 2013 man
For me, it worked like following. Please look at JAVA_HOME environment variable, whether it is pointing to JRE or JDK.? If it pointed to JRE, you will face "Perhaps you are running on a JRE rather than a JDK" issue. if so change the path to JDK.
Modifying like this, it worked for me.
JAVA_HOME C:\Program Files\Java\jdk1.8.0_31
I had the same error and I was missing the User variable: JAVA_HOME and the value for the SDK - "C:\Program Files\Java\jdk-9.0.1" in my case
Installing java 8 in amazon linux/redhat
-->
yum search java | grep openjdk
-->
yum install java-1.8.0-openjdk-headless.x86_64
-->
yum install java-1.8.0-openjdk-devel.x86_64
-->
update-alternatives --config java #pick java 1.8
and press 1-->
update-alternatives --config javac #pick java 1.8
and press 2Thank You
This is how i fixed my problem
right clik on the project > properties > Java Compiler (select the one you are using)
it was 1.5 for me but i have 1.8 installed. so i changed it to 1.8.. and voilla it worked!.
Check if /usr/bin has 'javac'. If not you have installed JRE & have to install jdk dev version like "java-1.8.0-openjdk-devel.x86_64"
I had the same issue after installing the
java-1.8.0-openjdk
package on an AWS Linux AMI. The incorrect assumption I made, was that because the file ended in openjdk it would be the jdk version. This is not the case.The openjdk install page explains everything clearly.
If you've already installed the java-1.8.0-openjdk package, just leave it and the JAVA_HOME value if it's working for the JRE and install the java-1.8.0-openjdk-devel package using
yum install java-1.8.0-openjdk-devel -y
.