代码之家  ›  专栏  ›  技术社区  ›  Andrei Vajna II

如何在Java开发中使用Jython?

  •  1
  • Andrei Vajna II  · 技术社区  · 15 年前

    因此,不允许将Jython用于在工作中开发的生产代码。相反,您可以使用它来帮助您完成日常任务和活动,编写Java代码。问题是:您如何使用Jython,这对您的开发和/或生产力有何帮助?

    5 回复  |  直到 7 年前
        1
  •  3
  •   Brian Agnew    15 年前

    我运行Jython命令行,并在命令行上动态创建/查询我的类。我发现这对于确定类如何响应各种输入(通常这些输入会被编码到测试等)非常有效。

    我还发现这对于学习Swing非常有用——动态调整大小/重新打包以及添加/删除组件。

    其他Java脚本语言(如BeanShell)也可以这样做,但Jython是我最先学会并使用的。

        2
  •  1
  •   Blauohr    15 年前

    脚本在win和linux中到处运行(不需要特殊的.bat/.sh)

    例如,我的小util.py(要导入)

    import sys
    import os
    import shutil
    
    def ant(buildfile,target=''):
        antrun = os.sep.join([os.environ['ANT_HOME'],'bin','ant'])
        action = ' '.join([antrun,'-buildfile',buildfile,target])
        os.system(action)
    
    def jboss_start():
        jbrun = os.sep.join([os.environ['JBOSS_HOME'],'bin','run'])
        action = ' '.join(['start',jbrun,'-c default -b %COMPUTERNAME%'])
        print action
        os.system(action)
    
    def jboss_stop(args='--user=admin --password=admin -s %COMPUTERNAME% -S'):
        os.environ['NOPAUSE'] = "TRUE"
        jbstop = os.sep.join([os.environ['JBOSS_HOME'],'bin','shutdown'])
        action = ' '.join([jbstop,args])
        print action
        os.system(action)
    
    def pjoin(*args):
        rc = os.sep.join(args)
        return os.path.normpath(rc)
    
    def env(key,value=None):
        if value :
            os.environ[key] = value
        return os.environ.get(key,'')
    
    def cp(src,dst):
        shutil.copy(src, dst)
    
    def mkdir(dst,mode=0777):
        if not os.path.exists(dst) :
            os.makedirs(dst, mode)
    

    .. 我使用jython(pydev)在eclipse中运行测试。 jython非常适合编写java代码的小测试。

        3
  •  1
  •   lutz lutz    15 年前

    我使用Jython使用 jconn2.jar 包括 com.sybase.jdbc2.jdbc.SybDriver . 连同 zxJDBC iBATIS 这使我能够针对我所在公司的一个主要数据库使用Python编程。

        4
  •  0
  •   Bryan Oakley    15 年前

    我们使用jython运行“jybot”,它是测试的一部分 robot framework . 它允许我们编写java代码,作为java代码和测试脚本之间的粘合剂。

        5
  •  0
  •   Michał Niklas    15 年前

    • 我喜欢蟒蛇,
    • 我们的一个主要产品是用Java编写的,使用JDBC驱动程序

    我使用Jython和zxJDBC来做一些工具,比如基准测试查询, 我创建的examaple的测试模式等 tool to export Oracle database information (表、列、触发器、过程),可与Python+cx_Oracle或Jython+Oracle JDBC驱动程序一起使用。