银河麒麟系统下openjdk安装及环境变量设置
<p>1、openjdk安装:</p><p> A、检查java版本,终端命令:java -version</p>
<p> B、更新麒麟系统软件包列表,终端命令:sudo apt update 查看列表 -->:apt list 升级</p>
<p> C、银河麒麟桌面环境提供了OpenJDK作为Java的官方实现(default-jdk,openjdk-11-jdk,openjdk-17-jdk等版本),终端命令:sudo apt install openjdk-11-jdk</p>
<p> 建议安装长期支持版本:openjdk-11-jdk和openjdk-17-jdk。</p>
<p> 麒麟自带jdk版本:openjdk-11-jdk(openjdk11.0.6)和 openjdk-17-jdk(openjdk17.0.6)。</p>
<p> javafx-sdk使用openjfx17.0.6可兼容openjdk-11-jdk和openjdk-17-jdk。</p>
<p> D、验证安装成功,终端命令:java -version </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110153501536-961597709.png" alt="" width="608" height="183" loading="lazy"></p>
<p> E、openjdk也可以通过麒麟系统可视化安装:软件商店--软件管理--卸载软件--搜索框中输入:openjdk--搜索 </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110154006260-1726035705.png" alt="" width="606" height="410" loading="lazy"></p>
<p> 没有搜索到--点击:全库 </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110154207659-1050848634.png" alt="" width="608" height="307" loading="lazy"></p>
<p> 显示出只有卸载按钮,在openjdk-11-jdk相应标题上点击,打开详细信息界面 </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110154440072-1698549661.png" alt="" width="622" height="357" loading="lazy"></p>
<p> 在jdk详细信息界面即可正常安装,安装按成后,“安装”按钮变为“已安装”。 </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110154845821-894298946.png" alt="" width="622" height="372" loading="lazy"></p>
<p> F、通过终端命令:sudo vim /etc/profile ,可以看到通过系统自动安装的openjdk相关的环境变量并不在/etc/profile中。</p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202311/340253-20231110155506917-1786029852.png" alt="" loading="lazy"></p>
<p> 使环境变量设置生效命令:<span style="color: rgba(255, 0, 0, 1)">source /etc/profile</span></p>
<p><span style="color: rgba(255, 0, 0, 1)"> 查看环境变量命令:env</span></p>
<p><span style="color: rgba(255, 0, 0, 1)"> 查看环境变量命令:echo $MAVEN_HOME 及 echo $PATH</span><span style="color: rgba(255, 0, 0, 1)"> </span></p>
<p> G、Java安装路径,在麒麟系统中,默认情况下Java的安装路径为/usr/lib/jvm,终端命令:ls /usr/lib/jvm 可以查看到已安装的jdk版本的文件</p>
<p> wqz@wqz-pc:~/桌面$ ls /usr/lib/jvm</p>
<p> java-1.11.0-openjdk-arm64 java-11-openjdk-arm64 openjdk-11 </p>
<p> <img src="https://img2023.cnblogs.com/blog/340253/202312/340253-20231213141623322-286538895.png" alt="" width="785" height="355" loading="lazy"></p>
<p> 安装位置为:/usr/lib/jvm/java-17-openjdk-arm64,还有对应快捷方式java-1.17.0-openjdk-arm64,</p>
<p> 而安全策略文件在:file:///usr/lib/jvm/java-17-openjdk-arm64/conf/security/policy/limited 下,如default_local.policy,default_US_export.policy等</p>
<p> H、根据以上介绍,如果手动下载jdk文件,并手动安装jdk,需要解压下载的jdk文件,拷贝到/usr/lib/jvm目录下,并且需要在/etc/profile文件中jdk设置环境变量</p>
<p> 例如手动安装jdk8:</p>
<p> wqz@wqz-pc:/home/wqz$ tar -xzvf jdk1.8.0_391.tar.gz --》将下载的jdk1.8.0_391.tar.gz文件解压到目录:/home/wqz/jdk1.8.0_391 </p>
<p> wqz@wqz-pc:~/桌面$ cd /usr/lib --》进入在/usr/lib下</p>
<p> wqz@wqz-pc:/usr/lib$ sudo mkdir jvm --》在/usr/lib下创建jvm目录,麒麟系统默认未安装jdk时,需要创建jvm目录<br> wqz@wqz-pc:/usr/lib$ cd jvm --》进入在/usr/lib/jvm下<br> wqz@wqz-pc:/usr/lib/jvm$ sudo cp -r /home/wqz/jdk1.8.0_391 ./ --》将解压后的jdk文件夹及内容拷贝到/usr/lib/jvm目录下<br> wqz@wqz-pc:~/桌面$ ls /usr/lib/jvm --》查看目录下内容<br> jdk1.8.0_391<br> wqz@wqz-pc:~/桌面$ sudo vim /etc/profile --》编辑/etc/profile文件设置环境变量<br> 输入密码</p>
<p> /etc/profile追加的环境变量设置信息:<em> </em></p>
<p> export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_391<br> export JRE_HOME=${JAVA_HOME}/jre<br> export CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar<br> export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${PATH}</p>
<p> 注意:vim编辑器的使用,输入:i键表示进入编辑模式,在文件末尾追加内容,esc键表示退出编辑模式,:键表示进入末行模式,可以输入w+回车键保存编辑内容,</p>
<p> :+q+回车键退出vim编辑器,进入终端命令界面。</p>
<p> 麒麟系统下环境变量名称用大写字母,环境变量值中引用环境变量名称时以:${环境变量名称}或$环境变量名称,(<em>${PATH} 或 $PATH</em>),环境变量值中的路径分割符为冒号:,</p>
<p> 而win系统下为逗号,。</p>
<p> 设置PATH环境变量时,最后需要加上${PATH},如:export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${PATH}</p>
<p> wqz@wqz-pc:~/桌面$ source /etc/profile --》保存设置文件<br> wqz@wqz-pc:~/桌面$ java -version --》查看设置是否成功<br> java version "1.8.0_391"<br> Java(TM) SE Runtime Environment (build 1.8.0_391-b13)<br> Java HotSpot(TM) 64-Bit Server VM (build 25.391-b13, mixed mode)<br> wqz@wqz-pc:~/桌面$ echo $JAVA_HOME --》查看环境变量的设置<br> /usr/lib/jvm/jdk1.8.0_391</p>
<p><em><em>2、麒麟</em></em><em id="__mceDel">桌面系统版中卸载openjdk,终端命令:</em><em id="__mceDel"><em id="__mceDel">sudo apt-get remove openjdk* <em id="__mceDel">--》<em id="__mceDel">卸载openjdk的所以版本,星号*为通配符</em></em></em></em></p>
<p><em><em><em><em>3、麒麟系统下环境变量的查看命令:</em></em></em></em></p>
<p><em><em><em><em> 终端命令:echo $PATH --》查看特定环境变量,环境变量引用可以为:${PATH} 或 $PATH</em></em></em></em><em id="__mceDel"><em><em><em><em><br></em></em></em></em></em></p>
<p> wqz@wqz-pc:~/桌面$ echo $PATH<br> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/wqz/apache-maven-3.9.5/bin<em id="__mceDel"><em><em><em><em> </em></em></em></em></em><em id="__mceDel"><em><em><em><em><em> </em></em></em></em></em></em></p>
<p> wqz@wqz-pc:~/桌面$ echo ${PATH}<br> /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/wqz/apache-maven-3.9.5/bin</p>
<p><em id="__mceDel"><em><em><em><em> </em></em></em></em></em></p>
<p><em><em><em><em> </em></em></em></em></p>
<p><em><em><em><em> 终端命令:env <em> --》查看全部环境变量</em></em></em></em></em></p>
<p><em><em><em><em> <em>终端命令:<em>printenv <em> --》查看全部环境变量</em></em></em></em></em></em></em><em id="__mceDel"><em id="__mceDel"><em><em><em><em><em><em><em> </em></em></em></em></em></em></em></em></em></p>
<p> wqz@wqz-pc:~/桌面$ env<br>SHELL=/bin/bash<br>SESSION_MANAGER=local/wqz-pc:@/tmp/.ICE-unix/1884,unix/wqz-pc:/tmp/.ICE-unix/1884<br>WINDOWID=83886087<br>QT_ACCESSIBILITY=1<br>MWV206_GL_FORCE20=ukui-control-center<br>COLORTERM=truecolor<br>XDG_CONFIG_DIRS=/etc/xdg/xdg-ukui:/etc/xdg<br>XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0<br>GTK_IM_MODULE=fcitx<br>QT_DBL_TAP_DIST=30<br>LANGUAGE=zh_CN:zh<br>QT4_IM_MODULE=fcitx<br>MANDATORY_PATH=/usr/share/gconf/ukui.mandatory.path<br>SSH_AUTH_SOCK=/tmp/ssh-XlqXFcCsOfSZ/agent.1884<br>XMODIFIERS=@im=fcitx<br>DESKTOP_SESSION=ukui<br>SSH_AGENT_PID=2110<br>GTK_MODULES=ukuireload-gtk-module:canberra-gtk-module<br>XDG_SEAT=seat0<br>PWD=/home/wqz/桌面<br>LOGNAME=wqz<br>XDG_SESSION_DESKTOP=ukui<br>QT_QPA_PLATFORMTHEME=ukui<br>XDG_SESSION_TYPE=x11<br>GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1<br>XAUTHORITY=/home/wqz/.Xauthority<br>XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/wqz<br>GDM_LANG=zh_CN<br>HOME=/home/wqz<br>LANG=zh_CN.UTF-8<br>LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:<br>XDG_CURRENT_DESKTOP=UKUI<br>VTE_VERSION=6001<br>XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0<br>CLUTTER_IM_MODULE=fcitx<br>QT_QPA_PLATFORM=xcb<br>LESSCLOSE=/usr/bin/lesspipe %s %s<br>XDG_SESSION_CLASS=user<br>TERM=xterm-256color<br>GTK_OVERLAY_SCROLLING=0<br>DEFAULTS_PATH=/usr/share/gconf/ukui.default.path<br>LESSOPEN=| /usr/bin/lesspipe %s<br>USER=wqz<br>MAVEN_HOME=/home/wqz/apache-maven-3.9.5<br>DISPLAY=:0<br>QT_DBL_CLICK_DIST=30<br>SHLVL=1<br>QT_IM_MODULE=fcitx<br>XDG_VTNR=7<br>XDG_SESSION_ID=4<br>XDG_RUNTIME_DIR=/run/user/1000<br>ZIPINFO=-O GBK<br>UNZIP=-O GBK<br>ZLOG_PROFILE_ERROR=/var/log/xtx/zlog_error.log<br>MWV206_GL_FORCE15=wechat:ubgears<br>ZLOG_PROFILE_DEBUG=/var/log/xtx/zlog_debug.log<br>XDG_DATA_DIRS=/usr/share/ukui:/usr/local/share/:/usr/share/<br>PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/wqz/apache-maven-3.9.5/bin<br>GDMSESSION=ukui<br>DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus<br>_=/usr/bin/env</p>
<p><em>////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////</em></p>
<p><em>来自于:https://bbs.chinauos.com/en/post/14486</em></p>
<div class="pot_title">UOS下GraalVM原生编译,Swing程序</div>
<div class="content">
<div class="post_conten">
<div class="post_edit">
<div>
<p><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14f09f2797c4c8c11168b65dafdf799bae.png" alt="" width="742" height="714"><br>Graalvm 原生编译Swing程序到本地可执行文件,有什么好处呢? 不用管java版本啦! 爱用哪个版本用哪个版本。</p>
<p>也不用管有没有装jre了!相当于乌龟(jar包)带着房子(jvm)跑。性能嘛 其次啦,他们说有巨大提升,管他呢,我都用java了 还要什么性能。</p>
<p>要啥自行车!<br>第一、Graalvm环境,我已经安装过了,大概说一下,有专门讲安装过程的。<br>1、安装Graalvm<br>我用的22.3.1-jdk17下载地址:https://download.bell-sw.com/vm/22.3.1/bellsoft-liberica-vm-openjdk17.0.6+10-22.3.1+1-linux-amd64.tar.gz<br>下载下来解压到/opt下面,like this:<br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/145c050cc77f1ec9fb995a334c3938236f.png" alt="" width="890" height="656"><br>2、配置环境变量</p>
<pre><code>vi /etc/profile
export GRAALVM_HOME=/opt/bellsoft-liberica-vm-openjdk17-22.3.1
export JAVA_HOME=/opt/bellsoft-liberica-vm-openjdk17-22.3.1
export PATH=$JAVA_HOME/bin:$PATH
export GRAALVM_HOME</code></pre>
<p><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14afa048ea63c5eaeaa41e7dd99521187a.png" alt=""></p>
<pre><code>source /etc/profile</code></pre>
<p><br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/148265b5c8b1cb355df53e6d8eb806ecfd.png" alt="" width="824" height="252"><br>3、安装native-image</p>
<pre><code>gu install native-image</code></pre>
<p>4、需要装一些依赖软件,我忘了 自己去找哈,很简单。总之呢以上graalvm+native-image+依赖,都装完了。</p>
<pre><code>依赖软件若干,实在忘了</code></pre>
<p><br>============================================================================================================================<br>第二、找一个swing工程,打包成 可运行jar ,依赖jar包放到lib目录下<br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14c9316de70a636d71c96d01d724d62a47.png" alt="" width="873" height="575"><br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14958b748a2fbf12f14ede6b3e513fd9f6.png" alt="" width="867" height="590"><br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/1445406ff1851974ce3cec67d90e595b9f.png" alt="" width="907" height="750"><br>第三、jar包编译成本地可执行</p>
<pre><code>java -agentlib:native-image-agent=config-output-dir=config -jar school-dashboard.jar</code></pre>
<p><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/140519b289eef572c685b64dc903ba4799.png" alt="" width="938" height="674"></p>
<pre><code>native-image --no-fallback -H:ConfigurationFileDirectories=config -Djava.awt.headless=false --allow-incomplete-classpath-J-Xmx7G-Djava.awt.headless=false -jar hello-graal-swing-0.0.4.jar</code></pre>
<p><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14efbc45a99fa598e5d0abab5d013c435d.png" alt="" width="959" height="660"><br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/143ae7024567b624a84e3e74b90d9b83b0.png" alt="" width="954" height="273"><br><img src="https://ucare-resources.oss-cn-shenzhen.aliyuncs.com/pro/2023/03/14efa3e9162ae0761ff1b33603b541c37b.png" alt="" width="957" height="671"></p>
<p>小细节很多,后面我再改改。<br>如果报错了,一是依赖可能没装全,二是这玩意还不成熟 字面意思不成熟<br><br>留下几个网址:<br>安装部署:https://bell-sw.com/pages/liberica_install_guide-native-image-kit-21.3.2/#liberica-nik-dependencies-on-linux<br>下载地址:https://bell-sw.com/pages/downloads/native-image-kit/#downloads<br>举个栗子:https://bell-sw.com/announcements/2022/08/05/liberica-native-image-kit-22-2-0-and-21-3-3-builds-are-out/</p>
</div>
</div>
</div>
</div>
<p><em> </em></p>
<p> </p><br><br>
来源:https://www.cnblogs.com/qingzhen/p/17824452.html
頁:
[1]