01/10/2018, 16:56

Maven không thể thấy JDK

Đợt trước máy mình phải cài lại nên là java và maven có phần bị lỗi khi compile và cả package. Các cao nhân giúp hộ mình với:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.harrycoder.discordbot</groupId>
  <artifactId>MiraiBot</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>MiraiBot</name>
  <url>http://maven.apache.org</url>

  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
      <groupId>net.dv8tion</groupId>
      <artifactId>JDA</artifactId>
      <version>3.7.1_386</version>
    </dependency>
  </dependencies>

  <repositories>
    <repository>
      <id>jcenter</id>
      <name>jcenter-bintray</name>
      <url>http://jcenter.bintray.com</url> 
    </repository>
  </repositories>
</project>

Sau khi mình chạy cả mvn install với mvn package thì nó ra lỗi củ chuối sau:

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

Dạo này làm việc với java hơi bị mệt mỏi sau đợt phải cài lại win quá

Tynk Huynk viết 19:07 ngày 01/10/2018

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

Em có set enviroment variable JAVA_HOME chưa ?
nếu chưa thì set rồi restart lại máy

Còn không thì chơi cách chuối nhất dưới đây

<build>
...
    <plugins>
    ...
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <fork>true</fork>
                <executable><!--Thư mục đi đến javac.exe--></executable>
            </configuration>
        </plugin>
    </plugins>
</build>
Đỗ Trung Quân viết 19:07 ngày 01/10/2018

Bạn thử cách này xem

stackoverflow.com
kdoteu

Maven Package Compilation Error

java, maven, java-7
answered by kdoteu on 08:00PM - 16 Sep 15
Aragami1408 viết 18:57 ngày 01/10/2018

Cách chuối nhất lại ok anh à :))

Aragami1408 viết 19:04 ngày 01/10/2018

Sorry anh nha em xài vscode.
Dù sao cảm ơn anh đã trả lời

anon52681320 viết 19:06 ngày 01/10/2018

Khi đã dùng Maven hay Gradle thì ko thể sử dụng cách này để giải quyết việc set biến môi trường được.
Người khác clone source về thì sẽ phải config lại à ?

Set JAVA_HOME vào JDK location
Set PATH với JAVA_HOME/bin
Trong bin sẽ bao gồm java.exe(JRE) và javac.exe(Compiller)
Khi run application thì Windows OS sẽ load các biến trong PATH để xem có application nào thực thi được không.
Cách nào cũng tương tự như trên UNIX

https://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/

Bài liên quan
0