Public bug reported:

tracked on Github: https://github.com/RaiMan/SikuliX1/issues/511

-----------------------------


Hi , i tried to locate the image path using ("someClass/images"), but fail to 
add it in the image path. Only target/classes folder is added. the sub folder 
is not added...
My Project Structure
src
-main
--java
--JarMainClass
-resources
--images
---app2
----image1.png

Code:

public class JarMainClass {
    public static void main(String[] args) throws IOException, 
URISyntaxException, FindFailed {
        System.out.println("Hello!");
        ImagePath.add("JarMainClass/images/app2");
        System.out.println("1: "+ImagePath.getPaths());

}

Console:

[ERROR Commons] parameter(main: JarMainClass/images/app2, sub: null)
[ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\testproject\JarMainClass\images\app2
[ERROR Commons] parameter(main: 
file:/C:/Users/winnie.choi/Documents/testproject/target/classes/, sub: 
images/app2)
[ERROR Commons] makeURL: URL protocol not implemented
1: [null, C:\Users\winnie.choi\Documents\testproject\target\classes]

Environment
sikulixapi: 2.0.5
java: 1.8
OS: Windows Server 2012 R2
Maven

---------
I am able to add path by providing absolute path (e.g. 
src/main/resources/images/app2) or using 
ClassLoader.getSystemResource("images/app2").getPath() when running in the IDE. 
But i am unable to add the image path when running the exported jar. following 
is logged when trying to access the path by getResource() function
[ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
[ERROR Commons] makeURL: mainFile.getCanonicalFile().toURI().toURL(): 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
 (The filename, directory name, or volume label syntax is incorrect)
[ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
[ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
path:[null]

** Affects: sikuli
     Importance: High
     Assignee: RaiMan (raimund-hocke)
         Status: In Progress

** Changed in: sikuli
   Importance: Undecided => High

** Changed in: sikuli
     Assignee: (unassigned) => RaiMan (raimund-hocke)

** Changed in: sikuli
    Milestone: None => 2.0.6

** Changed in: sikuli
       Status: New => In Progress

** Description changed:

+ tracked on Github: https://github.com/RaiMan/SikuliX1/issues/511
+ 
+ -----------------------------
+ 
+ 
  Hi , i tried to locate the image path using ("someClass/images"), but fail to 
add it in the image path. Only target/classes folder is added. the sub folder 
is not added...
  My Project Structure
  src
  -main
  --java
  --JarMainClass
  -resources
  --images
  ---app2
  ----image1.png
  
- 
  Code:
  
  public class JarMainClass {
-     public static void main(String[] args) throws IOException, 
URISyntaxException, FindFailed {
-         System.out.println("Hello!");
-         ImagePath.add("JarMainClass/images/app2");
-         System.out.println("1: "+ImagePath.getPaths());
+     public static void main(String[] args) throws IOException, 
URISyntaxException, FindFailed {
+         System.out.println("Hello!");
+         ImagePath.add("JarMainClass/images/app2");
+         System.out.println("1: "+ImagePath.getPaths());
  
  }
  
  Console:
  
  [ERROR Commons] parameter(main: JarMainClass/images/app2, sub: null)
  [ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\testproject\JarMainClass\images\app2
  [ERROR Commons] parameter(main: 
file:/C:/Users/winnie.choi/Documents/testproject/target/classes/, sub: 
images/app2)
  [ERROR Commons] makeURL: URL protocol not implemented
  1: [null, C:\Users\winnie.choi\Documents\testproject\target\classes]
  
  Environment
  sikulixapi: 2.0.5
  java: 1.8
  OS: Windows Server 2012 R2
  Maven
  
- 
  ---------
  I am able to add path by providing absolute path (e.g. 
src/main/resources/images/app2) or using 
ClassLoader.getSystemResource("images/app2").getPath() when running in the IDE. 
But i am unable to add the image path when running the exported jar. following 
is logged when trying to access the path by getResource() function
  [ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
  [ERROR Commons] makeURL: mainFile.getCanonicalFile().toURI().toURL(): 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
 (The filename, directory name, or volume label syntax is incorrect)
  [ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
  [ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
  path:[null]

-- 
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to SikuliX.
https://bugs.launchpad.net/bugs/1960350

Title:
  [2.0.5] ImagePath: using a class as folder reference does not work
  when running a jar containing the images

Status in SikuliX:
  In Progress

Bug description:
  tracked on Github: https://github.com/RaiMan/SikuliX1/issues/511

  -----------------------------

  
  Hi , i tried to locate the image path using ("someClass/images"), but fail to 
add it in the image path. Only target/classes folder is added. the sub folder 
is not added...
  My Project Structure
  src
  -main
  --java
  --JarMainClass
  -resources
  --images
  ---app2
  ----image1.png

  Code:

  public class JarMainClass {
      public static void main(String[] args) throws IOException, 
URISyntaxException, FindFailed {
          System.out.println("Hello!");
          ImagePath.add("JarMainClass/images/app2");
          System.out.println("1: "+ImagePath.getPaths());

  }

  Console:

  [ERROR Commons] parameter(main: JarMainClass/images/app2, sub: null)
  [ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\testproject\JarMainClass\images\app2
  [ERROR Commons] parameter(main: 
file:/C:/Users/winnie.choi/Documents/testproject/target/classes/, sub: 
images/app2)
  [ERROR Commons] makeURL: URL protocol not implemented
  1: [null, C:\Users\winnie.choi\Documents\testproject\target\classes]

  Environment
  sikulixapi: 2.0.5
  java: 1.8
  OS: Windows Server 2012 R2
  Maven

  ---------
  I am able to add path by providing absolute path (e.g. 
src/main/resources/images/app2) or using 
ClassLoader.getSystemResource("images/app2").getPath() when running in the IDE. 
But i am unable to add the image path when running the exported jar. following 
is logged when trying to access the path by getResource() function
  [ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
  [ERROR Commons] makeURL: mainFile.getCanonicalFile().toURI().toURL(): 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
 (The filename, directory name, or volume label syntax is incorrect)
  [ERROR Commons] parameter(main: 
file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2,
 sub: null)
  [ERROR Commons] makeURL: file does not exist: 
C:\Users\winnie.choi\Documents\jar\file:\C:\Users\winnie.choi\Documents\jar\jar-with-dependencies.jar!\images\app2
  path:[null]

To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/1960350/+subscriptions


_______________________________________________
Mailing list: https://launchpad.net/~sikuli-driver
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp

Reply via email to