Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jython在我的代码库中是个累赘吗?_Java_Python_Jvm_Python Requests_Jython - Fatal编程技术网

Java Jython在我的代码库中是个累赘吗?

Java Jython在我的代码库中是个累赘吗?,java,python,jvm,python-requests,jython,Java,Python,Jvm,Python Requests,Jython,我继承了一个大型Java/Scala代码库,它使用Jython与同样大的Python代码库进行接口。事情一直进展顺利,直到大约三天前,我们所有的构建突然在Jython阶段失败,并发出以下信息: RuntimeException:java.lang.RuntimeException:方法代码太大 事实证明,JVM中方法的大小有65kb的内部限制。最新版本的Python请求似乎是罪魁祸首,这是我们Python代码库的一个重要依赖项。我猜最新版本在某处引入了一个非常大的类 最明显的解决方案是将请求库版

我继承了一个大型Java/Scala代码库,它使用Jython与同样大的Python代码库进行接口。事情一直进展顺利,直到大约三天前,我们所有的构建突然在Jython阶段失败,并发出以下信息:

RuntimeException:java.lang.RuntimeException:方法代码太大

事实证明,JVM中方法的大小有65kb的内部限制。最新版本的Python请求似乎是罪魁祸首,这是我们Python代码库的一个重要依赖项。我猜最新版本在某处引入了一个非常大的类


最明显的解决方案是将请求库版本固定到早期版本。我是否应该固定Python代码的所有库版本(就像我在Java中所做的那样)?除了版本固定之外,还有其他工作吗?我是不是太冒险了?

我今天刚开始使用请求库,就遇到了这个问题。追踪到Idna库,特别是uts46data.py文件,该文件的数据结构超过了Java的64 kb类限制(这是一件愚蠢的事情)

克隆了主回购协议,并在
在请求和indna githubs上留下了注释。您可以查看我的更改并将其合并到新的请求下载中。

非常感谢!我克隆了您的分支,然后由jython setup.py安装,然后请求库构建现在完成。对于需要这样做的人,下面是克隆分支的代码:git clone-b johnabooth-jython27-fix