有一个weblogic python脚本,它接受一个线程转储并休眠10或20秒,然后在time.sleep(30)之后再进行一次,线程转储工作正常,但睡眠方法time.sleep(20)是不工作。
同时尝试import time
和from time import sleep
。
在下面出现此错误
AttributeError: java package 'weblogic.time' has no attribute 'sleep'
答案 0 :(得分:10)
这个对我有用: https://community.oracle.com/thread/3560679
import time as systime
systime.sleep(10)
答案 1 :(得分:5)
这里的问题是weblogic.time
包正在影响stdlib time
模块。所以,当你尝试import time
时,你会得到前者,而不是后者。
(而weblogic.time
除了子包或模块weblogic.time.common
之外什么都没有,所以你试图使用它的sleep
函数时会出错。但这可能是一件好事 - 比它有一个名为sleep
的函数,它没有达到预期的效果。)
如果您正在开发weblogic
本身,我可以解释如何不这样做......但如果您只是使用weblogic
,那对您没有帮助。
如果您之前正在做from weblogic import *
之类的事情,解决方案很简单:就是不要这样做。否则......解决问题会更复杂。
但是如果你需要做的就是阻止你的解释器线程20秒,你可以用Java Thread.sleep(20000)
来做。请参阅this tutorial,但实际上,您不需要了解Java方法需要整数毫秒而不是浮点秒。然后你不需要time
。