Not correctly imported modules

Asked by Chp

my start code:
______________________________________
# coding=utf-8
from os.path import dirname
from os import putenv
from sikuli.Sikuli import *

TEST_DIR = dirname(dirname(dirname(getBundlePath())))
ROOT_DIR = dirname(TEST_DIR)

putenv('TEST_DIR', TEST_DIR)
putenv('ROOT_DIR', ROOT_DIR)

sys.path.append(TEST_DIR)
sys.path.append(ROOT_DIR)

from Core import API, Common, Config
from TestCases.DZ import DZ
from TestCases.Objects import Balloon

######## Local info ########

dz = DZ('Baloon test')
dz.bookmark = '#bookmark=id.6r4pfml1y97j'
______________________________________________
script filename - "Balloon. py" is in directory D:\autotest\dz\TestCases\Extra\Balloon.sikuli\Balloon.py.
There is another one file Balloon.py from directory D:\autotest\dz\TestCases\Objects\Balloon.py.
I make import <from TestCases.Objects import Balloon>, but I get imported another module (D:\autotest\dz\TestCases\Extra\Balloon.sikuli\Balloon.py).
Trace:
cmd.exe /c D:/autotest/SikuliX/runsikulix.cmd -r D:\autotest\dz\TestCases\Extra\Balloon.sikuli --args home=1 eoe=1
+++ running this Java
java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b26)
Java HotSpot(TM) Client VM (build 25.40-b25, mixed mode, sharing)
+++ trying to run SikuliX
+++ using: -Xms64M -Xmx512M -Dfile.encoding=UTF-8 -Dsikuli.FromCommandLine -jar D:\autotest\SikuliX\sikulix.jar -r D:\autotest\dz\TestCases\Extra\Balloon.sikuli --args home=1 eoe=1
Check log dir D:\autotest\dz\Log\2015_06_12
Exception in thread "MainThread" java.lang.IllegalStateException: No match found
 at java.util.regex.Matcher.group(Matcher.java:536)
 at org.sikuli.scriptrunner.JythonScriptRunner.findErrorSourceWalkTrace(JythonScriptRunner.java:356)
 at org.sikuli.scriptrunner.JythonScriptRunner.findErrorSource(JythonScriptRunner.java:321)
 at org.sikuli.scriptrunner.JythonScriptRunner.runPython(JythonScriptRunner.java:226)
 at org.sikuli.scriptrunner.JythonScriptRunner.runScript(JythonScriptRunner.java:183)
 at org.sikuli.scriptrunner.ScriptingSupport$RunBox.run(ScriptingSupport.java:597)
 at org.sikuli.scriptrunner.ScriptingSupport$RunBox.access$400(ScriptingSupport.java:513)
 at org.sikuli.scriptrunner.ScriptingSupport.runscript(ScriptingSupport.java:442)
 at org.sikuli.ide.SikuliIDE.run(SikuliIDE.java:206)
 at org.sikuli.ide.Sikulix.main(Sikulix.java:21)
[error] script [ D:\autotest\dz\TestCases\Extra\Balloon.sikuli ] stopped with error in line 17
[error] RuntimeError ( !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! !!WHILE IMPORTING!! maximum recursion depth exceeded (Java StackOverflowError) )

Process finished with exit code 0

Tell me please why it happens?

Question information

Language:
English Edit question
Status:
Solved
For:
SikuliX Edit question
Assignee:
No assignee Edit question
Solved by:
Chp
Solved:
Last query:
Last reply:
Revision history for this message
RaiMan (raimund-hocke) said :
#1

SikuliX has a special support for importing other scripts, which intercepts the Python import and tries to find the given module name as givenName.sikuli. If this is found in the same directory or somewhere else on sys.path, it is taken as to be imported.

The consequence:
Avoid to name SikuliX scripts with the same name as Python modules you want to import.

in your case you should rename your
Balloon.sikuli\Balloon.py

to something else like
BalloonScript.sikuli\BalloonScript.py

Revision history for this message
Chp (chpnick) said :
#2

This Solved My Problem