Linux Eclipse 命令行(终端)启动正常使用,sh 脚本执行后界面不正常/无法启动
eclipse界面展示不正常
一般是旧版eclipse的事,linux eclipse界面还是用gtk实现的,可以在启动前引用export SWT_GTK3=0试试.
不能正常启动
不正正常启动一般是JDK没有设置好导致的,虽然有时候终端可以正常启动,但是设置到菜单中运行时就报找不到JDK.
个人觉得原因还是运行环境问题,类似windows中的环境变量,如果windows中环境变量没设置也不能直接敲java执行
创建一个sh脚本,在脚本中执行eclipse:
在执行的sh脚本中添加 source /etc/profile 命令,让脚本在每次执行时,重新设置一遍环境变量
source /etc/profile
export SWT_GTK3=0 //必须,要不eclipse启动后有会发现多个窗口不正常
cd /eclipse路径/
./eclipse
执行脚本前刷新变量只是针对/etc/profile中配置jdk的情况,如果不想在/etc/profile指定jdk,可以在启动前手动设置JDK路径,指向JDK\bin:
PATH=/opt/jdk/jdk8/bin:$PATH
cd /eclipse路径/
./eclipse
注意linux下路径间分隔符是 : 冒号,不是 ; 分号./opt/jdk/jdk8/bin是我的jdk路径下的bin
但是不建议这样手动引用,最好还是设置项JDK
打开 /etc/profile 添加:
# 声明JAVA变量名,类似Windows新建一个变量
export JAVA_HOME=/opt/dev/jdk/jdk8/jdk1.8.0_161
# 引用到PATH,类似Windows %变量名% ,linux 引用变量是$变量名,另外linux动态设置变量直接 变量=值 就可以.
PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JRE_HOME=$JAVA_HOME/jre
保存后
source /etc/profile 刷新一下环境变量
看心情看 :)
在脚本中运行时,可以通过echo $PATH 查看当前运行环境路径.
也可以通过PATH=xxx 临时设置环境变量路径,尽量不要使用这种,很麻烦,因为PATH设置的是所有路径,如果设置PATH=${java}/bin路径是,会发现除了java命令,linux基本命令(cd,ls,echo....)临时全都不能使用.PATH设置的是所有路径.
linux所有执行命令都在$PATH指定的目录中(echo、ls 、bash...:/bin/),上方执行source /etc/profile 也是在向$PATH追加java路径.
profile 中的
name=x/xx/xxx 声明变量
PATH=$name/xx/:.....:$PATH 设置PATH路径
会发现所有给PATH赋值时都会包含 $PATH,这才起到在$PATH追加指定路径效果
注意路径和路径间用:(冒号)分割,windows是;分号