我正在使用Java制成的服务器。在某些时间点(例如,有人单击游戏中的对象),服务器将加载使用Jython创建的脚本。我无法使脚本正常工作,主要是因为该脚本是随机导入的。这是脚本:
from resources.common import RadialOptions
import sys
import random
def createRadial(core, owner, target, radials):
radials.add(RadialOptions(0, 21, 1, '')) #Use
radials.add(RadialOptions(0, RadialOptions.diceRoll, 3, '@dice/dice:dice_roll_single'))
return
def handleSelection(core, owner, target, option):
if option == RadialOptions.diceRoll or 21:
stringOptions = ['red', 'blue']
owner.sendSystemMessage('Your chance cube rolled the color ' + random.choice(stringOptions) , 0)
return
加载服务器并调用脚本后,我收到一个导入错误,提示没有名为“ random”的模块。我调用的Jython / Python中存在的模块都没有关系,除了sys和java类之外,它什么都没有。
然后,我继续打开PyDev控制台,尝试查看我是否能够随机导入。成功了。
PyDev控制台如何在我调用脚本时让我导入随机或任何其他模块,而不是服务器?
最佳答案
尝试在PyDev中输入:
import sys
print sys.path
然后将相同的内容添加到脚本中-在出现问题之前进行比较,如果在两种情况下它们都相同,则将二者进行比较,以在本地计算机和运行服务器的计算机上随机搜索二者的元素。