【Android自動化打包】02. javac的用法
javac命令用法如下:
一 . 檢視javac的幫助命令
操作步驟:cmd-->回車-- > 輸入javac -help ,可檢視javac的命令
二. 例項演示:
前提條件:
先來段HelloWorld.java儲存到e:\Software\EclipseWorkspace\wirelessqa\src\com\wqa\test\ 資料夾下面
package com.wqa.test;
/**
* @author Xiaopeng
*
*/
public class HelloWorld
{
public static void main(String[]
args) {
System. out.println("hello
world" );
}
}
2.1. 把編譯檔案存放到類同級目錄下
命令: javac e:\Software\EclipseWorkspace\wirelessqa\src\com\wqa\test\HelloWorld.java
結果: 編譯檔案會存放在類檔案同一個目錄 下
2.2. 把編譯檔案存放到指定的位置
命令:javac -d <編譯檔案存放位置> <類的存位置>
步驟:
1. cmd--回車--重定向到e盤(自已定義,看檔案存放在哪裡)
2. 輸入:E:\>javac -d Software\EclipseWorkspace\classes Software\EclipseWorkspace\wirelessqa\src\com\wqa\test\HelloWorld.java
3. 回車,到資料夾 E:\Software\EclipseWorkspace\classes\com\wqa\test 檢視編譯結果
2.3. 執行編譯過的類檔案 **.class檔案
命令: java -cp <**.class檔案存放的資料夾+空格+類名>
例項演示:
public class HelloWorld
{
public static void main(String[]
args) {
System. out.println("hello
world" );
}
HelloWorld.java 存放到在E盤根目錄下,執行javac e:\HelloWorld.java 編譯,生成HelloWorld.class
執行:java -cp e:\ HelloWorld
結果:hello world
2.4. 編譯有外部引用的類
命令: java -cp <jar包存放路徑> <類檔案存放路徑>
例項演示:
import com.auto.operate.*;
//引用AutoMonkey.jar中的類
/**
* @author Xiaopeng
*
*/
public class HelloWorld
{
public static void main(String[]
args) {
new SystemUtils().print("hello
world" );
}
}
這裡引用一個包com.auto.operate.*; 這個jar包位於e盤根目錄下:AutoMonkey.jar
1. 如果直接 javac E:\HelloWorld.java 則會報錯
2. 如果指定jar包 則編譯正常:javac -cp E:\AutoMonkey.jar E:\HelloWorld.java
編譯成功,重成HelloWorld.class
說明:
如果當前你要編譯的java檔案中引用了其它的類,但該引用類的.class檔案不在當前目錄下(或在其他目錄下,或在.zip/.jar內),
這種情況下就需要在javac命令後面,加上-cp/-classpath引數來指明這些類的位置。 一般來說有三種指定方式:
① 絕對或相對路徑:javac -cp e:/AutoMonkey.jar HelloWorld.java 或 javac -cp ../AutoMonkey.jar HelloWorld.java (其中 .. 表示上一級目錄 )
② 系統變數:javac -cp %CLASSPATH% HelloWorld.java (其中:%CLASSPATH%表示使用系統變數CLASSPATH的值進行查詢,
這裡假設AutoMonkey.jar的路徑就包含在CLASSPATH系統變數中)
③ 當前目錄: javac -cp ./AutoMonkey.jar HelloWorld.java (其中 . 表示當前目錄 )
完整的編譯執行一下:
注意: ①-cp的路徑不僅指定了所需要的AutoMonkey.jar的位置,還必須指出編譯後的Test.class的位置。
② 類路徑中的不同專案要用分隔符區分,Unix系統的分隔符是冒號(:),Windows的是分號(;)
轉自:http://blog.csdn.net/wirelessqa
相關文章
- 【Android自動化打包】01. aapt的用法AndroidAPT
- Android程式自動化打包Android
- 自動化打包那些事
- 【Android自動化打包】03. APK的數字簽名AndroidAPK
- Python的iOS自動化打包PythoniOS
- iOS自動化編譯打包iOS編譯
- iOS自動化打包(fastlane使用)iOSAST
- Android 自動化打包實踐 gradle打包並推送到git遠端庫AndroidGradleGit
- Android自動打包、簽名、優化、上傳ANT指令碼Android優化指令碼
- iOS如何實現自動化打包iOS
- 安卓自動化打包環境搭建安卓
- 使用 fastlane 實現自動化打包AST
- 為Android應用增加渠道資訊 自動化不同渠道的打包過程Android
- Mac 環境下 Android 使用 Jenkins 構建自動化打包MacAndroidJenkins
- jenkins配置android自動打包平臺JenkinsAndroid
- iOS自動化打包部署踩坑記iOS
- fastlane 自動化打包工具實踐AST
- jenkins iOS自動化打包分發JenkinsiOS
- 實現Xcode 9自動化打包XCode
- 使用Automator自動化iOS打包流程iOS
- 教你在Android自動打包解包簽名方法Android
- 關於iOS自動化打包的一些分享iOS
- 360加固+美團walle多渠道自動化打包
- iOS--利用Fastlane實現自動化打包iOSAST
- 關於jenkins自動化打包探索Jenkins
- ReactNative專案自動化打包釋出React
- [android]android自動化測試十三之monkeyRunner自動化框架Android框架
- 基於Jenkins實現php專案的自動化測試、自動打包和自動部署JenkinsPHP
- jenkins+gitlab + 蒲公英實現 android 應用自動化打包分發JenkinsGitlabAndroid
- [android]android自動化測試Android
- 自動化瓦力多渠道打包python指令碼Python指令碼
- React Native專案自動化打包釋出React Native
- android使用jenkins進行自動化打包並且上傳到fir或者蒲公英AndroidJenkins
- 使用 Fastlane 實現 iOS 跟 Android 自動打包指令碼ASTiOSAndroid指令碼
- Android使用Ant自動編譯簽名打包詳解Android編譯
- Android ant自動打包指令碼:自動替換友盟渠道、版本號、包名Android指令碼
- Python自動化打包業務和認證平臺Python
- [android]android自動化過程遇到的問題Android