기금넷 공식사이트 - 금 선물 - 파이썬에서 JPype 를 사용하여 Java 를 호출하는 인스턴스 공유를 구현하는 방법
파이썬에서 JPype 를 사용하여 Java 를 호출하는 인스턴스 공유를 구현하는 방법
1.JPype 가 뭔가요?
JPype 는 python 코드가 Java 코드를 쉽게 호출할 수 있도록 하는 도구로서 서버측 프로그래밍과 같은 일부 영역에서 python 의 단점을 극복합니다.
2.JPype 와 Jython(JPython 후계자) 의 차이점은 무엇입니까?
1) 운영 환경은 다릅니다. jython 은 JVM 에서 실행되며 JPype 의 실제 운영 환경은 python 런타임으로 남아 있습니다. 단, 실행 중 포함된 JVM 이 시작됩니다.
2) 사용자가 다릅니다. jython 은 Java 프로그램을 위한 것이고, JPype 는 파이썬 프로그래머를 위한 것입니다.
2, JPype 설치
1. 파이썬 2.7 과 JAVA1.6
2. JPY PE-.5.4.2.win32-Python2.7 을 먼저 설치합니다
3.Ubuntu12.4 설치 명령: sudo apt-get install python-JPype
3, JPY PE 사용 지침
1. JAVA 시작
jpype.startJVM () 의 정의
startjvm (JVM, * args) jpype.startjvm () 의 매개 변수
매개 변수 1: Jpype.getDefaultJVMPath () 를 호출하여 기본 JVM 경로를 얻을 수 있습니다.
매개 변수 2: args 는 JPype 에 의해 Java virtual machine 의 시작 매개 변수로 JVM 에 직접 전달되는 선택적 매개 변수입니다. 모든 유효한 JVM 시작 매개 변수 (예:
-agentlib: libname [= options]
-classpath classpath
-verbose) 에 적합합니다 파이썬 프로그램이 종료되면 JVM 이 자동으로 종료됩니다.
3. 타사 Java 확장 팩 참조
파이썬 프로젝트에서 타사 Java 확장 팩을 호출해야 하는 경우가 많습니다. 이는 JPype 의 중요한 용도이기도 합니다.
JVM 시작 매개 변수에-dJava.class.path = ext _ classpath 를 추가하여 파이썬 코드에서 기존 Java 확장 팩을 호출합니다.
4. JAVA 시스템 속성 액세스
일부 Java 애플리케이션에서 JVM 의 시스템 속성을 설정하거나 가져와야 하는 경우가 있습니다.
JVM 시작 시 시스템 변수 설정 예:
JVM 시작 매개 변수에
-dproperty = value4 매개 변수 추가, 예
1. Java API
from 직접 호출 Jdk 1.6. _ 1/JRE/bin/client/jvm.dll ", "-ea")
java.lang.system.out.println ("hello world")
shutdown JAVA () 2
public class jpypedemo {
public string say hello (string user) {
return "hello"+user;
}
public int calc (int a, int b) {
return a+b;
}
} 2) 파이썬은 타사 JAVA jar 패키지 프로그램
from JPY peimport *
import os.path
jar path = 를 호출합니다 F:/sample _ py/')
시작 JVM ("c:/Java/jdk1.6. _ 1/JRE/bin/ccom "-djava.class.path =% s"% (jarpath+'jpypedemo.jar')
# Ubuntu 의 시작 JVM (") "-djava.class.path =% s"% (jarpath+'xxx.jar')
jdclass = jclass ("JPY py Jd 를 만드는 두 가지 방법
jprint = java.lang.system.out.println
jprint (jd.say hello ("waw")
1)JVM 시작 시 시스템 변수 설정 예
import JPY PE
jvmpath = JPY pe.getdefaultjvmpath ()
jvmarg = "" :
jpype.startJVM(jvmPath, JvmArg)2) 프로그램에서 시스템 변수 설정 예
import JPY PE
prop = "yourproperty"
value = "yourvalue" < p
system.set property (str (prop), str (value)) 3) 프로그램에서 시스템 변수 가져오기 예
import JPY PE
property