这是我第一次使用Alpine linux映像。它是詹金斯建造管道的一部分。
当我试图编译我的maven构建(它需要Java 1.8(时……它给出了一个错误,表明没有安装编译器。
然而,我确认它已安装。。。多种方式;
-
回显JAVA_HOME变量,返回
/usr/lib/jvm/java-1.8-openjdk
-
测试以确认编译器存在;通过运行"${JAVA_HOME}/javac-版本"。。。其返回;
/usr/lib/jvm/java-1.8-openjdk/bin/javac -version
javac 1.8.0_222
- 但是,maven仍然指向JRE
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T07:58:13Z)
Maven home: /usr/share/java/maven-3
Java version: 1.8.0_222, vendor: IcedTea
Java home: /usr/lib/jvm/java-1.8-openjdk/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.19.84-coreos", arch: "amd64", family: "unix"
我尝试手动安装JDK。。。但似乎无济于事;
apk update
apk add openjdk8
apk add maven
有什么建议吗?我需要Java 8来编译这个应用程序。。。并且目前每一次尝试做";mvn清洁安装";导致故障,如下所示;
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
尝试了许多不同的想法,然后最终考虑设置编译器的路径,令人惊讶的是,现在它可以工作了!
export PATH=${PATH}:${JAVA_HOME}/bin
mvn clean install