當前位置:首頁 » 編程軟體 » shell腳本啟動jar

shell腳本啟動jar

發布時間: 2022-07-28 20:33:17

⑴ 項目jar包上傳到shell後怎麼用腳本運行

1、上傳jdk的安裝包到 /rootjdk-8u131-linux-x64.tar.gz

2、確認系統是否已經安裝過jdkrpm -qa|grep jdkrpm -e _nodeps 軟體名稱 //如果檢查到有安裝就執行卸載命令

3、解壓縮jdk的安裝包到指定目錄

tar -xvf jdk-8u131-linux-x64.tar.gz -C /usr/local/

4、進入解壓縮目錄
cd /usr/local

5、修改jdk的文件夾名稱mv jdk1.8.0_131 jdk

6、配置環境變數修改環境變數配置文件:vi /etc/profile,點 i鍵進入編輯模式,按ESC 輸入:wq 保存退出
7、重新載入環境配置,source /etc/profile
8、測試JDK安裝是否ok
java -version

9、編寫hello.java
vi Hello.java
然後ESC :wq退出

python 需要調用 /shell/目錄下的run.sh。在腳本中調用的是一個jar包,jar包可

我用的spss版本是22.0,也是最近為了使用SPSS Python Essentials才安裝的這個版本,大家可以參考這篇文章,以便正確安裝spss 22.0。
安裝好了spss22.0以後,如果你按照上面的安裝教程進行的安裝,SPSS Python Essentials就自動的安裝在了你的spss22.0的安裝目錄下。接下來我們要進行必要的設置。
打開spss22的界面,打開編輯菜單下的【選項】
切換到腳本選項下,我們設置一下預設腳本語言為python,點擊【應用】
切換到【文件位置】選項下,設置python的位置,我們有兩個選項,一個是隨IBM SPSS安裝的位置,這就是說,spss22在安裝的時候自動安裝了python2.7,如果我們想要使用這個python,就選擇第一個選項;但是我現在有一個更好的建議,使用我們自己安裝的python,也就是說在安裝spss之前就有一個python安裝好了,我現在想使用這個python,我們可以設置python的其他安裝,然後找到這個python安裝的目錄,最後點擊確定就可以了。為什麼我建議使用第二種選擇呢?因為我的python下有很多安裝好的擴展包,需要在處理數據的時候調用,以後安裝新的擴展包也很方便。如果使用是、隨spss安裝的python,還需要另行安裝這些擴展包
設置完成以後,我們想要啟動python的編輯窗口,需要在開始菜單中啟動,如圖所示。不能直接從python的安裝目錄里啟動。
另外,spss22還有一個bug,我們雖然設置了Python的主目錄,但是在新建腳本的時候,還是用的隨spss安裝的python的shell。所以想要使用python腳本,你就從上面那個方面里啟動python shell
原作者:Delta數據工作室

⑶ 想請大神寫一個在linux環境下用shell腳本控制jar的啟動和停止,類似於一個後台服務那種的。

得看你的程序是什麼樣子 一般腳本中主要需要定義好你的啟動用戶 java的環境變數 jar需要調用的類和庫 然後用case語句 來通過判斷腳本後面鍵入的值 如start stop等一類的內容 來執行或結束jar程序

⑷ 關於一個shell腳本的解釋問題

cd `dirname $0` //首先cd到腳本所在目錄

jar_file=$(ls *.jar) //然後列出jar格式的文件,並賦值給jar_file變數
mole_name=${jar_file%.*} //刪掉最後一個 . 及其右邊的字元串,即擴展名
now_date=$(date +%Y-%m-%d) //按格式取當前日期


// 下面這句是查找名為變數 mole_name 的進程,然後再找java進程。

// 然後顯示出第一行,第二個域。總的來說就是查找進程的PID

pid=$(ps -ef|grep ${mole_name}|grep java|head -n 1|awk '{print $2}');

echo kill ${mole_name} pid:${pid} // 結束上面找到進程

kill -9 $pid

// 設置JVM運行參數,最小內存386mb,最大內存512mb
JAVA_OPTS="-Xms386m -Xmx512m" 設置


// 如果沒有logs目錄則新建

if [ ! -d "logs" ]; then
mkdir logs
fi


// 重新執行變數jar_file變數指向的文件,並輸出日誌到logs目錄下的.out文件中,同時重新查找pid。
nohup java $JAVA_OPTS -jar ${jar_file} $params > logs/${mole_name}.out 2>&1 &
pid=$(ps -ef|grep ${mole_name}|grep java|head -n 1|awk '{print $2}');

// 顯示進程信息。
echo mole:${mole_name} startup finish pid:${pid}.
sleep 0.5
echo ${pid} > ${mole_name}.pid

綜上所述,這段代碼用於重啟spring boot進程。

⑸ shell腳本調用外部腳本的問題

估計是因為腳本1中使用了cd命令改變了當前路徑,腳本2中繼承了腳本1中的當前路徑;而一旦腳本1結束回到主shell,這個當前路徑也就不復存在。
如果在腳本2基於這個當前路徑啟動jar包前,腳本1結束了,那麼當前路徑肯定回到了主shell的設置去了,jar包就啟動不了了。
任何外部調用的shell命令執行都會產生一個進程,都會有一個pid,即使最終執行是返回錯誤。

所以,兩點建議:
1)腳本1調用2的命令行後加上 &,置入後台運行,這樣就不會因為腳本1的結束而影響腳本2的運行。
2)腳本中盡量不要用cd命令跳轉目錄,盡量使用絕對路徑。

⑹ linux shell調用java的jar包怎麼寫

這個應該不可能吧, 沒有jre光是你自己的java代碼怎麼可能執行. 唯一的可能就是你把jre也一起打包進你的jar文件, 然後再shell裡面運行jar文件的時候指定classpath到你的jar包路徑下的jre目錄

⑺ shell定時執行腳本啟動jar程序的問題

在腳本里聲明java環境變數,加上下列語句在#! /bin/sh底下,注意.後面有空格
. ~/.bash_profile
. /etc/profile

⑻ 在shell裡面怎麼執行一個可執行的jar,並且執行jar需要兩個參數

把下面的代碼保存到文件裡面,然後賦予可執行許可權,最後./文件名 執行
#!/bin/bash
java -jar xxxx.jar 參數1 參數2

⑼ Linux shell腳本啟動一個jar為什麼拋出NoClassDefFoundError的異常

這個並不是你腳本的問題,而是jar包里的代碼問題:缺少了相關的class文件。問題應該是你的jar包運行需要第三方jar文件吧。

熱點內容
如何選擇家庭最佳配置 發布:2025-02-07 11:06:50 瀏覽:86
javatomcat伺服器搭建伺服器 發布:2025-02-07 10:55:22 瀏覽:622
vcenter存儲器集群 發布:2025-02-07 10:54:31 瀏覽:583
咖啡的腳本 發布:2025-02-07 10:46:18 瀏覽:520
nsftp速度 發布:2025-02-07 10:30:58 瀏覽:431
存儲過程ifor 發布:2025-02-07 10:25:28 瀏覽:433
命令行執行oracle腳本文件命令行 發布:2025-02-07 10:14:49 瀏覽:96
ibook安卓怎麼下 發布:2025-02-07 10:12:13 瀏覽:693
銀行卡沒有密碼怎麼辦啊 發布:2025-02-07 10:08:13 瀏覽:31
游戲庫源碼 發布:2025-02-07 09:49:15 瀏覽:54