Jython 2.7.2中提示URI is not hierarchical怎么办
发表于:2024-11-13 作者:千家信息网编辑
千家信息网最后更新 2024年11月13日,这篇文章主要为大家展示了"Jython 2.7.2中提示URI is not hierarchical怎么办",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"
千家信息网最后更新 2024年11月13日Jython 2.7.2中提示URI is not hierarchical怎么办
这篇文章主要为大家展示了"Jython 2.7.2中提示URI is not hierarchical怎么办",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Jython 2.7.2中提示URI is not hierarchical怎么办"这篇文章吧。
1 .背景
由于需要使用Jython。但是发现一个诡异的现象IDE使用没有问题,但是打包jar报错。
Properties props = new Properties(); props.put("python.home","D:\\jython2.7.2"); props.put("python.path","D:\\jython2.7.2\\Lib\\site-packages"); props.put("python.console.encoding", "UTF-8"); // Used to prevent: console: Failed to install '': java.nio.charset.UnsupportedCharsetException: cp0. props.put("python.security.respectJavaAccessibility", "false"); //don't respect java accessibility, so that we can access protected members on subclasses props.put("python.import.site","false"); //props.put("python.cachedir.skip","true"); props.put("org.python.netty.noUnsafe","true"); Properties preprops = System.getProperties(); PythonInterpreter.initialize(preprops, props, new String[0]);// 此处报异常 PythonInterpreter pyInterp = new PythonInterpreter();
java.lang.IllegalArgumentException: URI is not hierarchical at java.io.File.(File.java:418) at org.python.core.PrePy.getJarFileNameFromURL(PrePy.java:427) at org.python.core.PrePy._getJarFileName(PrePy.java:362) at org.python.core.PrePy.getJarFileName(PrePy.java:345) at org.python.core.PySystemState.doInitialize(PySystemState.java:1195) at org.python.core.PySystemState.initialize(PySystemState.java:1130) at org.python.core.PySystemState.initialize(PySystemState.java:1085) at org.python.core.PySystemState.initialize(PySystemState.java:1080) at org.python.util.PythonInterpreter.initialize(PythonInterpreter.java:63) at com.langtutu.ncs.api.robot.core.Test. (Test.java:34) at com.langtutu.ncs.api.service.impl.HomestaySchedulingServiceImpl.DownOrderTest(HomestaySchedulingServiceImpl.java:90) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84) at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
2. 问题查找
使用IDE和远程调用分别调试跟踪了一下jython,定位到代码报错行:
IDE调试 发现url是如下的:
jar:file:/D:/maven/apache-maven-3.3.9/repository/org/python/jython/2.7.2/jython-2.7.2.jar!/org/python/core/PrePy.class
远程调试
嵌套不能用。
3. 解决方案:
maven打包时候将jython剔除;运行时候加载外部jar包即可。
剔除:
org.springframework.boot spring-boot-maven-plugin 2.2.10.RELEASE ZIP org.python
运行:
java -Dloader.path="lib/" -jar .\ncsapi-0.0.1-SNAPSHOT.jar
lib里面就是jar包。此时运行完全正常
以上是"Jython 2.7.2中提示URI is not hierarchical怎么办"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
怎么办
提示
内容
篇文章
运行
时候
问题
学习
帮助
诡异
代码
就是
方案
易懂
更多
条理
现象
知识
编带
背景
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京华为服务器虚拟化设计
注册软件开发公司要多少钱
scum服务器在哪买
国家网络安全法实行时间
宁德网络安全问题
网络安全mte技术
影响网络安全的因素主要有
微信虚拟定位软件开发原理
计算机网络技术能当消防员吗
大力发展高新园区的软件开发
网络安全相关
服务器内存可以在amd上使用吗
2016服务器安全日志
音乐大师软件开发
怎么用php连接数据库实现签到
网络安全基本属性范围有什么
网络工程网络安全是干嘛的
关于网络安全支付保护措施
高一学生网络安全教育课程
数据库语法代码
浪潮服务器ipmi口特别慢
新加坡壹链网络技术有限公司
搭建一台服务器花费
手机上的云服务器是干什么的
我国为网络安全做了什么
遍历服务器文件夹
马云的副手网络安全宣传周
数据库中大写
炼方块的服务器叫啥
基于服务器的网络的定义