poidasmith / winrun4j

WinRun4J Java Application Launcher
http://winrun4j.sourceforge.net
212 stars 63 forks source link

Path expansion is broken for directories with non-ASCII characters #93

Open nigredo-tori opened 5 years ago

nigredo-tori commented 5 years ago
IEUser@MSEDGEWIN10 c:\dev\tmp
$ type Test\test.ini
classpath.1=test.jar
main.class=Main

IEUser@MSEDGEWIN10 c:\dev\tmp
$ rcedit /N Test\test.exe Test\test.ini
[info] OK

IEUser@MSEDGEWIN10 c:\dev\tmp
$ Test\test.exe
[info] Module Name: c:\dev\tmp\Test\test.exe
[info] Module INI: c:\dev\tmp\Test\test.ini
[info] Module Dir: c:\dev\tmp\Test\
[info] INI Dir: c:\dev\tmp\Test\
[info] Configured vm.location: (null)
[info] Found VM: C:\Program Files\Java\jre1.8.0_192\bin\server\jvm.dll
[info] Expanding Classpath: test.jar
[info] Generated Classpath: c:\dev\tmp\Test\test.jar
[info] VM Args:
[info] vmarg.0=-Djava.class.path=c:\dev\tmp\Test\test.jar
[info] Registering natives for Native class
[warn] Could not find Native class

IEUser@MSEDGEWIN10 c:\dev\tmp
$ rename Test Проверка

IEUser@MSEDGEWIN10 c:\dev\tmp
$ Проверка\test.exe
[info] Module Name: c:\dev\tmp\????????\test.exe
[info] Module INI: c:\dev\tmp\????????\test.ini
[info] Module Dir: c:\dev\tmp\????????\
[info] INI Dir: c:\dev\tmp\????????\
[info] Configured vm.location: (null)
[info] Found VM: C:\Program Files\Java\jre1.8.0_192\bin\server\jvm.dll
[info] Expanding Classpath: test.jar
[info] Generated Classpath:
[info] VM Args:
[info] vmarg.0=-Djava.class.path=
[info] Registering natives for Native class
[warn] Could not find Native class
 [err] Could not find or initialize main class
java.lang.NoClassDefFoundError: Main
Caused by: java.lang.ClassNotFoundException: Main
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)

Note that in the second case Generated Classpath is empty. This is not limited to classpath, though - the sibling INI file is also not found.

nigredo-tori commented 5 years ago

Related discussion: https://github.com/poidasmith/winrun4j/issues/50