Linux环境编译安装OpenJDK
Centos6.5 AMD64位機器
Java的源碼是C,C++和Java實現的,所以還需要有一個安裝好的java建議選OracleJDK參考文末
安裝OracleJDK
Linux環境安裝卸載JDK以及安裝Tomcat和發布Java的web程序
安裝依賴 | Install dependence
# yum -y install gcc gcc-c++ alsa-lib alsa-lib-devel libXrender libXrender-devel libXi-devel libXt-devel libXtst-devel cups cups-devel
安裝ant | install ant
# ln -s /usr/local/apache-ant-1.9.4/bin/ant /usr/bin/ant
解壓OpenJDK
# unzip openjdk-7u40-fcs-src-b43-26_aug_2013.zip
環境配置
# vim ~/.bash_profile
export PATH
export LANG="C"
export ALT_BOOTDIR="/usr/lib/jdk/jdk1.7.0_55"
export ALLOW_DOWNLOADS=true
export SKIP_DEBUG_BUILD=false
export SKIP_FASTDEBUG_BUILD=true
export DEBUG_NAME=debug
unset JAVA_HOME
unset CLASSPATH
使變量生效 | make the variables take effect
# source ~/.bash_profile
測試環境是否健全
# make sanity
#編譯
make ARCH_DATA_MODEL=64
或者
# make
安裝過程中可以看到在用javac編譯java了:
安裝完成測試
public class Test{
public static void main(String[] args){System.out.println("Hello World by http://blog.csdn.net/unix21");}
}
# /usr/openjdk/build/linux-amd64/bin/javac Test.java
# /usr/openjdk/build/linux-amd64/bin/java Test
參考:
http://zhaohe162.blog.163.com/blog/static/38216797201410854611165/?suggestedreading&wumii
報錯參考:http://blog.csdn.net/shawyeok/article/details/48267195
安裝過程會報錯
報錯1
./gamma: relocation error: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.38.x86_64/jre/lib/amd64/libjava.so: symbol JVM_FindClassFromCaller, version SUNWprivate_1.1 not defined in file libjvm.so with link time reference
部分amd64架構的機器可能會出現異常,主要是由于OpenJDK的一個bug導致的, 把OpenJDK替換為Oracle JDK即可, 注意同時修改build.sh中的內容
報錯2
Error: time is more than 10 years from present: 1136059200000
通過修改CurrencyData.properties文件, 把10年之前的時間修改為10年之內即可
Index: /usr/openjdk/jdk/src/share/classes/java/util/CurrencyData.properties
---------------------------------------
安裝OracleJDK
Linux環境安裝卸載JDK以及安裝Tomcat和發布Java的web程序
# rpm -qa | grep java
java-1.6.0-openjdk-devel-1.6.0.38-1.13.10.0.el6_7.x86_64
tzdata-java-2016a-2.el6.noarch
java-1.6.0-openjdk-1.6.0.38-1.13.10.0.el6_7.x86_64
rpm -e --nodeps java-1.6.0-openjdk-devel-1.6.0.38-1.13.10.0.el6_7.x86_64
rpm -e --nodeps tzdata-java-2016a-2.el6.noarch
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.38-1.13.10.0.el6_7.x86_64
tar zxvf ./jdk-7u55-linux-x64.tar.gz -C /usr/lib/jdk
vim /etc/profile?
export JAVA_HOME=/usr/lib/jdk/jdk1.7.0_55 ?
export JRE_HOME=/usr/lib/jdk/jdk1.7.0_55/jre ?
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH ?
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib?
# update-alternatives --install /usr/bin/java java /usr/lib/jdk/jdk1.7.0_55/bin/java 300
# update-alternatives --install /usr/bin/javac javac /usr/lib/jdk/jdk1.7.0_55/bin/javac 300
# update-alternatives --config java
# update-alternatives --config javac
# echo "export JAVA_HOME=/usr/lib/jdk/jdk1.7.0_55" >> /etc/profile
總結
以上是生活随笔為你收集整理的Linux环境编译安装OpenJDK的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Shiro源码学习之二
- 下一篇: 调试JDK源码-HashSet实现原理