A. Shell怎麼調用java
安個jdk,然後shell腳本里調用jdk中的javac編譯java成class,然後調用java執行
可以打成jar包,但不一定非要打包,關鍵是要設對環境變數,假設你打好包了,叫a.jar,其中要執行的類為A,依賴於b.jar,c.jar,那麼你可以寫個test.sh,和各jar放同一目錄,內容為:
#/bin/bash
java -cp b.jar:c.jar:a.jar:. A
然後在crontab里執行test.sh即可,例如:
15 * * * * /usr/local/test/test.sh
如果不打包,則將項目輸出目錄內的東西放到和test.sh同一層目錄,然後將test.sh改為:
#/bin/bash
java -cp b.jar:c.jar:. A
C. shell向java傳遞數組
傳遞多個參數,或者參數用"括起來當一個字元串參數,在程序裡面再拆分。
D. linux shell腳本如何啟動一個java進程
在shell裡面直接調用即可。
1,編譯一個java文件為a.class。
2,編寫shell腳本b .sh 。
#!/bin/bash
javaa.class
3,放在同一目錄下運行shell即可。如果要後台運行,bash b.sh&
E. 用shell怎麼調用java程序
你是在linux環境下運行吧!
如果你是要編譯執行單個java文件,當然用javac,和java,如果是在一個shell腳本中妄圖調用java程序,假如這個程序是個jar包,也許可以這么干:在你能保證的路徑下放入可執行的jar包,然後在腳本中寫到:java -jar jar包路徑+jar包名稱.jar,不信可以在終端使用該命令!
------最後,希望採納!畢竟我們純手打!
F. 使用java怎麼寫一個shell腳本
java-cp"./classes:./classlib"-Dparam1=zzzzztest.myclass$0
-cp指定classpath
-D指定一個參數,程序內用System.getProperty("param1")訪問
$0把外部調用的參數傳遞給javaclass
G. java如何與shell實現交互
互動式模式就是shell等待你的輸入,並且執行你提交的命令。
這種模式被稱作互動式是因為shell與用戶進行交互。這種模式也是大多數用戶非常熟悉的:登錄、執行一些命令、簽退。當你簽退後,shell也終止了。
shell也可以運行在另外一種模式:非互動式模式。在這種模式下,shell不與你進行交互,而是讀取存放在文件中的命令,並且執行它們。當它讀到文件的結尾,shell也就終止了。
H. linux shell調用java的jar包怎麼寫
這個應該不可能吧, 沒有jre光是你自己的java代碼怎麼可能執行. 唯一的可能就是你把jre也一起打包進你的jar文件, 然後再shell裡面運行jar文件的時候指定classpath到你的jar包路徑下的jre目錄
I. 如何在java中執行shell腳本
1、最常用的方法:
Processp=Runtime.getRuntime().exec(SHELL_FILE_DIR+RUNNING_SHELL_FILE+
""+param1+""+param2+""+param3);
intrunnngStatus=p.waitFor();
2、通過ProcessBuilder進行調度,這種方法比較直觀,而且參數的設置也比較方便:
ProcessBuilderpb=newProcessBuilder("./"+RUNNING_SHELL_FILE,param1,
param2,param3);
pb.directory(newFile(SHELL_FILE_DIR));
intrunningStatus=0;
Strings=null;
try{
Processp=pb.start();
try{
runningStatus=p.waitFor();
}catch(InterruptedExceptione){
e.printStackTrace();
}
}catch(IOExceptione){
e.printStackTrace();
}
if(runningStatus!=0){
}
return;
參數說明:
RUNNING_SHELL_FILE:要運行的腳本
SHELL_FILE_DIR:要運行的腳本所在的目錄; 當然你也可以把要運行的腳本寫成全路徑。
runningStatus:運行狀態,0標識正常。 詳細可以看java文檔。
param1, param2, param3:可以在RUNNING_SHELL_FILE腳本中直接通過1,1,2,$3分別拿到的參數。