2014-09-23 42 views
2

所以我有一個custom_rules.xml文件,我試圖在gradle中重建。到目前爲止,我沒有任何問題算出所有其他部分,但最後一部分我試圖完成的是運行一個特殊的apk簽名工具widevine drm對我生成的未簽名的apk使用我的gradle構建過程。我一直在網上查找gradle文檔,但我還沒有找到如何從gradle運行可執行jar文件。我知道我必須創建一個任務,但這是關於它的。任何幫助將非常感激。Android studio - 如何使用gradle中的可執行jar文件

PS。香港專業教育學院讀了很多的gradle這個文件的,請饒了我任何閱讀文檔的響應

編輯:

這是我的任務看起來像此刻,它編譯,但林不知道它實際上做任何事情

task (runApkSigTool , dependsOn: 'android', type: JavaExec) { 

classpath files('apksigtool.jar') 
main 'com.widevine.tools.android.apksigtool.ApkSigTool' 
args[0] = apkLocation 
args[1] = 'private_key.der' 
args[2] = 'my.crt' 

} 

林不知道如果我要使用它就像在我的build.gradle文件或什麼的機器人部分的方法。

+0

我對我的問題的最終解決方案是在這裏http://stackoverflow.com/questions/26048396/best-way-to-sign-an-apk-using-ant-in-a- build-gradle-file – 2014-09-29 18:33:47

回答

3

你也許可以使用JavaExec任務。這樣的事情:

task signApk(type: JavaExec) { 
    classpath files('path/to/executable.jar') 
    main 'com.foo.MainClass' 
    args ['-foo', 'bar'] 
} 
+0

感謝您提供答案。由於我的項目是一個Android應用程序,我將如何使用我的主要聲明? – 2014-09-23 03:34:16

+1

主將是您的可執行jar中的主類。通常情況下,Java通過查看jar清單中的Main-Class標題來執行類似'java -jar'的操作時可以爲您解決這個問題。您可以簡單地打開jar包並查看清單以查找此信息。 – 2014-09-23 03:37:03

+0

酷感謝:)如果我不能使這項工作,也許我會嘗試在任務中使用命令行功能。 – 2014-09-23 03:37:59

相關問題