溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么調用JAR加密邏輯

發布時間:2021-07-10 16:39:21 來源:億速云 閱讀:199 作者:Leah 欄目:編程語言

Python中怎么調用JAR加密邏輯,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

安裝 JDK 之后,通過 jar -xvf 命令去解壓單個 JAR,這樣會按包名在同級目錄下生成 JAVA 編譯后的 class 文件

# 一個個地去解壓JAR # 在本地生成class文件 jar -xvf a.jar jar -xvf b.jar jar -xvf c.jar

2-2 合并所有源碼

使用 jar -cvfM 命令,將本地所有的 class 文件生成一個新的 JAR

# 合并當前目錄下所有源碼為一個JAR # 其中:output.jar代表新的JAR jar -cvfM output.jar .

3. Python 調用 JAR

首先,我們安裝依賴包:jpype

# 安裝依賴包 pip3 install JPype1

假設 JAR 中加密邏輯實現代碼如下:

package com.xingag.common;  public class EncryHelper {     public String encrypt(String content) {           //加密邏輯     } }

使用 Python 調用 JAR 中的方法分為 3 步:

  • 啟動 JVM

  • 實例化 JAVA 對象,調用對應方法

  • 關閉 JVM

3-1 啟動 JVM

import jpype  # JAR本地路徑 jar_path = os.path.join(os.path.abspath('.'), './output.jar')  # 啟動jvm jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % (jar_path))

3-2 實例化 JAVA 對象,調用方法

根據被調方法所在的包名,使用 jpyte 中的 JClass() 方法實例化類 JAVA 對象,最后調用 JAVA 對象的方法即可

需要注意的是,由于 JAVA 中是實例方法,需要先進行對象實例化,然后調用方法;如果是靜態方法,可以直接調用方法

# 通過包名,實例化JAVA對象 EncryClass = jpype.JClass("com.xingag.common.EncryHelper") encryClass = EncryClass()  # 調用JAVA中的加密方法 content_encry = encryClass.encrypt("xag") print(content_encry)

3-3 關閉 JVM

可以選擇主動關閉 JVM,或者待 Python 程序運行后自動關閉,釋放資源

import jpype  # 關閉jvm jpype.shutdownJVM()

關于Python中怎么調用JAR加密邏輯問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女