美文网首页我爱编程
jpype的作用是在python中调用Sikuli的api ja

jpype的作用是在python中调用Sikuli的api ja

作者: 天天向上的小M | 来源:发表于2018-02-01 09:07 被阅读682次

    http://blog.csdn.net/a23764996/article/details/53541047

    http://blog.csdn.net/flask_p/article/details/70208275

    Jpype的使用

    1.  毋庸置疑,下载安装jpype

    2.  jdk要装好,这个自己找教程

    3.  这个包的作用:在python中调用java代码

    4.  hello world程序:

    from jpype import *  import os.pathstartJVM("jpype.getDefaultJVMPath()","-ea")  java.lang.System.out.println("hello World")  shutdownJVM()

    1

    2

    3

    4

    5

    程序说明:

    1.startJVM()  是JPype 用于启动 JAVA 虚拟机,在后续的任何 JAVA 代码被调用前,必须先调用此方法启动 JAVA 虚拟机 。它需要两个参数:startJVM(jvm, *args), jvm是指你系统中 jvm.dll 文件所在的路径,如“ C:\Program Files\IBM\Java50\jre\bin\j9vm\jvm.dll ”。 *args 是可选参数,会被 JPype 直接传递给 JVM 作为 Java 虚拟机的启动参数。

    2.jpype.getDefaultJVMPath() 默认的jvm路径。

    3.startJVM会关闭 JAVA 虚拟机

    5.  调用JAVA第三方扩展包

    1.JAVA自定义第三方jar包

    package com;

    public class Javatest {

    public String run(String str){

    return str;

    }

    public String testParam(String user){

    return "Hi, welcome" + user;

    }

    }

    jar cvfm test.jar com  制作jar包

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    2.调用jar包

    import jpype

    import os.path

    jarpath = os.path.join(os.path.abspath('.'), 'test.jar')

    print jarpath

    jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % jarpath)

    Test = jpype.JClass('com.Javatest')

    t = Test()

    res = t.run("abv")

    a = t.testParam("cd")

    print res

    print a

    jpype.shutdownJVM()

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    2.2                    jpype库安装

    jpype的作用是在python中调用Sikuli的api java库。

    可以到https://pypi.python.org/pypi/JPype1下载库,直接安装

    3     Sikuli IDE

    打开Sikuli安装目录中的runsikulix.cmd,直接打开sikuli IDE:

    如图,sikuli IDE的操作非常简单明了,直接按照提示进行操作就好了。

    但是这跟selenium-IDE一样,只能作为demo代码,所以需要把sikuli集成到我们的UI自动化框架中

    4     Python Sikuli

    Sikuli库是用java编写的,打包成Jar,要在python中使用,需要使用jpype进行转换。

    Python中调用sikuli的demo如下:

    # coding=utf-8

    fromjpypeimport*

    startJVM(r'C:\ProgramFiles\Java\jre1.8.0_111\bin\server\jvm.dll','-ea',r'-Djava.class.path=D:\sikuli\sikulixapi.jar')

    # shutdownJVM()

    App = JClass('org.sikuli.script.App')

    Screen = JClass('org.sikuli.script.Screen')

    screen = Screen()

    相关文章

      网友评论

        本文标题:jpype的作用是在python中调用Sikuli的api ja

        本文链接:https://www.haomeiwen.com/subject/goefextx.html