PhoenicisOrg / phoenicis

Phoenicis PlayOnLinux and PlayOnMac 5 repository
https://phoenicis.org/
GNU Lesser General Public License v3.0
684 stars 73 forks source link

Error when closing POL 5 after having opened (and afterwards closed) Notepad++ #714

Closed madoar closed 7 years ago

madoar commented 7 years ago

I've just tried the following on the:

  1. Open POL 5 in IntelliJ
  2. Start Notepad++ via POL 5 ("Run" button in the left sidebar of the "Library" Tab)
  3. Closing Nodepad++ by clicking on the "x" button of Nodepad++.
  4. Closing POL 5 by clicking on the "x" button of POL 5.

This process resulted in the following log and error:

/usr/lib/jvm/java-8-oracle/bin/java -javaagent:/home/marc/Dokumente/idea-IU-171.3780.107/lib/idea_rt.jar=36673:/home/marc/Dokumente/idea-IU-171.3780.107/bin -Dfile.encoding=UTF-8 -classpath "/usr/lib/jvm/java-8-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-8-oracle/jre/lib/deploy.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/cldrdata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/dnsns.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jaccess.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jfxrt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/localedata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/nashorn.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunec.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunjce_provider.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunpkcs11.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/zipfs.jar:/usr/lib/jvm/java-8-oracle/jre/lib/javaws.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfxswt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-8-oracle/jre/lib/management-agent.jar:/usr/lib/jvm/java-8-oracle/jre/lib/plugin.jar:/usr/lib/jvm/java-8-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-javafx/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-configuration/target/classes:/home/marc/.m2/repository/org/fedorahosted/tennera/jgettext/0.14/jgettext-0.14.jar:/home/marc/.m2/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar:/home/marc/.m2/repository/com/google/guava/guava/18.0/guava-18.0.jar:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-apps/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-entities/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-multithreading/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-tools/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-win32/target/classes:/home/marc/.m2/repository/jmimemagic/jmimemagic/0.1.2/jmimemagic-0.1.2.jar:/home/marc/.m2/repository/oro/oro/2.0.8/oro-2.0.8.jar:/home/marc/.m2/repository/xerces/xercesImpl/2.7.1/xercesImpl-2.7.1.jar:/home/marc/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/home/marc/.m2/repository/xml-apis/xmlParserAPIs/2.0.2/xmlParserAPIs-2.0.2.jar:/home/marc/.m2/repository/org/apache/commons/commons-compress/1.9/commons-compress-1.9.jar:/home/marc/.m2/repository/org/bouncycastle/bcpg-jdk16/1.46/bcpg-jdk16-1.46.jar:/home/marc/.m2/repository/org/bouncycastle/bcprov-jdk16/1.46/bcprov-jdk16-1.46.jar:/home/marc/.m2/repository/org/bouncycastle/bcmail-jdk16/1.46/bcmail-jdk16-1.46.jar:/home/marc/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar:/home/marc/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/home/marc/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar:/home/marc/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.7.0/jackson-databind-2.7.0.jar:/home/marc/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.7.0/jackson-annotations-2.7.0.jar:/home/marc/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.7.0/jackson-core-2.7.0.jar:/home/marc/.m2/repository/org/eclipse/jgit/org.eclipse.jgit/4.6.1.201703071140-r/org.eclipse.jgit-4.6.1.201703071140-r.jar:/home/marc/.m2/repository/com/jcraft/jsch/0.1.53/jsch-0.1.53.jar:/home/marc/.m2/repository/com/googlecode/javaewah/JavaEWAH/1.1.6/JavaEWAH-1.1.6.jar:/home/marc/.m2/repository/org/apache/httpcomponents/httpclient/4.3.6/httpclient-4.3.6.jar:/home/marc/.m2/repository/org/apache/httpcomponents/httpcore/4.3.3/httpcore-4.3.3.jar:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-scripts/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-library/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-engines/target/classes:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-containers/target/classes:/home/marc/.m2/repository/com/github/spullara/mustache/java/compiler/0.9.0/compiler-0.9.0.jar:/home/marc/.m2/repository/org/slf4j/slf4j-api/1.7.16/slf4j-api-1.7.16.jar:/home/marc/.m2/repository/org/slf4j/slf4j-simple/1.7.16/slf4j-simple-1.7.16.jar:/home/marc/.m2/repository/org/springframework/spring-context/4.2.5.RELEASE/spring-context-4.2.5.RELEASE.jar:/home/marc/.m2/repository/org/springframework/spring-aop/4.2.5.RELEASE/spring-aop-4.2.5.RELEASE.jar:/home/marc/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar:/home/marc/.m2/repository/org/springframework/spring-beans/4.2.5.RELEASE/spring-beans-4.2.5.RELEASE.jar:/home/marc/.m2/repository/org/springframework/spring-expression/4.2.5.RELEASE/spring-expression-4.2.5.RELEASE.jar:/home/marc/.m2/repository/org/springframework/spring-core/4.2.5.RELEASE/spring-core-4.2.5.RELEASE.jar:/home/marc/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/home/marc/Dokumente/Play on Linux/POL-POM-5/phoenicis-settings/target/classes" org.phoenicis.javafx.JavaFXApplication
Apr 21, 2017 12:59:59 PM org.springframework.context.annotation.AnnotationConfigApplicationContext prepareRefresh
INFORMATION: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@79aa5367: startup date [Fri Apr 21 12:59:59 CEST 2017]; root of context hierarchy
Apr 21, 2017 1:00:00 PM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFORMATION: Overriding bean definition for bean 'viewLibrary' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.javafx.views.mainwindow.library.ViewsConfigurationLibrary; factoryMethodName=viewLibrary; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.javafx.views.mainwindow.library.ViewsConfigurationLibrary] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.javafx.views.ViewsConfiguration; factoryMethodName=viewLibrary; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.javafx.views.ViewsConfiguration]
Apr 21, 2017 1:00:00 PM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFORMATION: Overriding bean definition for bean 'consoleTabFactory' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.javafx.views.mainwindow.library.ViewsConfigurationLibrary; factoryMethodName=consoleTabFactory; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.javafx.views.mainwindow.library.ViewsConfigurationLibrary] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.javafx.views.ViewsConfiguration; factoryMethodName=consoleTabFactory; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.javafx.views.ViewsConfiguration]
Apr 21, 2017 1:00:00 PM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFORMATION: Overriding bean definition for bean 'terminalOpener' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.tools.system.SystemConfiguration; factoryMethodName=terminalOpener; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.tools.system.SystemConfiguration] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.tools.ToolsConfiguration; factoryMethodName=terminalOpener; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.tools.ToolsConfiguration]
Apr 21, 2017 1:00:00 PM org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFORMATION: Overriding bean definition for bean 'operatingSystemFetcher' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.tools.system.SystemConfiguration; factoryMethodName=operatingSystemFetcher; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.tools.system.SystemConfiguration] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.phoenicis.tools.ToolsConfiguration; factoryMethodName=operatingSystemFetcher; initMethodName=null; destroyMethodName=(inferred); defined in class org.phoenicis.tools.ToolsConfiguration]
[JavaFX Application Thread] INFO org.phoenicis.apps.DefaultRepositoryManager - Adding repositories: [git+https://github.com/PlayOnLinux/Scripts, git+https://github.com/PlayOnLinux/Oldwares, classpath:///org/phoenicis/repository] at index 0
[JavaFX Application Thread] INFO org.phoenicis.apps.DefaultRepositoryManager - Converting: git+https://github.com/PlayOnLinux/Scripts to Repository
[JavaFX Application Thread] INFO org.phoenicis.apps.DefaultRepositoryManager - Converting: git+https://github.com/PlayOnLinux/Oldwares to Repository
[JavaFX Application Thread] INFO org.phoenicis.apps.DefaultRepositoryManager - Converting: classpath:///org/phoenicis/repository to Repository
[pool-3-thread-1] INFO org.phoenicis.apps.GitRepository - Begin fetching process of git-repository 'https://github.com/PlayOnLinux/Oldwares' in '/home/marc/.Phoenicis/cache/git-856579929'
[pool-3-thread-1] INFO org.phoenicis.apps.GitRepository - Opening git-repository 'https://github.com/PlayOnLinux/Oldwares' at '/home/marc/.Phoenicis/cache/git-856579929'
[ForkJoinPool.commonPool-worker-9] INFO org.phoenicis.apps.GitRepository - Begin fetching process of git-repository 'https://github.com/PlayOnLinux/Scripts' in '/home/marc/.Phoenicis/cache/git1476132144'
[ForkJoinPool.commonPool-worker-9] INFO org.phoenicis.apps.GitRepository - Opening git-repository 'https://github.com/PlayOnLinux/Scripts' at '/home/marc/.Phoenicis/cache/git1476132144'
[ForkJoinPool.commonPool-worker-9] INFO org.phoenicis.apps.GitRepository - Pulling new commits from git-repository 'https://github.com/PlayOnLinux/Scripts' to '/home/marc/.Phoenicis/cache/git1476132144'
[pool-3-thread-1] INFO org.phoenicis.apps.GitRepository - Pulling new commits from git-repository 'https://github.com/PlayOnLinux/Oldwares' to '/home/marc/.Phoenicis/cache/git-856579929'
[pool-3-thread-1] INFO org.phoenicis.apps.LocalRepository - Reading directory : /home/marc/.Phoenicis/cache/git-856579929
[ForkJoinPool.commonPool-worker-9] INFO org.phoenicis.apps.LocalRepository - Reading directory : /home/marc/.Phoenicis/cache/git1476132144
Apr 21, 2017 1:00:02 PM com.sun.javafx.css.StyleManager loadStylesheetUnPrivileged
WARNUNG: Resource "" not found.
Apr 21, 2017 1:00:13 PM org.springframework.context.annotation.AnnotationConfigApplicationContext doClose
INFORMATION: Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@79aa5367: startup date [Fri Apr 21 12:59:59 CEST 2017]; root of context hierarchy
[pool-4-thread-4] ERROR org.phoenicis.multithreading.ControlledThreadPoolExecutorService - java.lang.RuntimeException: java.lang.InterruptedException
    at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:397)
    at jdk.nashorn.api.scripting.ScriptObjectMirror.callMember(ScriptObjectMirror.java:199)
    at org.phoenicis.library.ShortcutRunner.lambda$null$0(ShortcutRunner.java:51)
    at org.phoenicis.scripts.nashorn.NashornInteractiveSession.eval(NashornInteractiveSession.java:36)
    at org.phoenicis.scripts.interpreter.BackgroundScriptInterpreter.lambda$null$1(BackgroundScriptInterpreter.java:43)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.InterruptedException
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:502)
    at java.lang.UNIXProcess.waitFor(UNIXProcess.java:395)
    at jdk.nashorn.internal.scripts.Script$Recompilation$44$13966A$\^eval\_._wineServer([Functions, Engines, Wine]:546)
    at jdk.nashorn.internal.scripts.Script$Recompilation$43$13277$\^eval\_._silentWait([Functions, Engines, Wine]:523)
    at jdk.nashorn.internal.scripts.Script$Recompilation$42$6871A$\^eval\_.wait([Functions, Engines, Wine]:286)
    at jdk.nashorn.internal.scripts.Script$Recompilation$31$679A$\^eval\_._WineShortcutReader#run([Functions, Shortcuts, Reader]:29)
    at jdk.nashorn.internal.scripts.Script$Recompilation$30$2587A$\^eval\_.ShortcutReader#run([Functions, Shortcuts, Reader]:83)
    at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:639)
    at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:494)
    at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:393)
    ... 7 more

Exception in thread "pool-4-thread-4" java.lang.RuntimeException: java.lang.InterruptedException
    at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:397)
    at jdk.nashorn.api.scripting.ScriptObjectMirror.callMember(ScriptObjectMirror.java:199)
    at org.phoenicis.library.ShortcutRunner.lambda$null$0(ShortcutRunner.java:51)
    at org.phoenicis.scripts.nashorn.NashornInteractiveSession.eval(NashornInteractiveSession.java:36)
    at org.phoenicis.scripts.interpreter.BackgroundScriptInterpreter.lambda$null$1(BackgroundScriptInterpreter.java:43)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.InterruptedException
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:502)
    at java.lang.UNIXProcess.waitFor(UNIXProcess.java:395)
    at jdk.nashorn.internal.scripts.Script$Recompilation$44$13966A$\^eval\_._wineServer([Functions, Engines, Wine]:546)
    at jdk.nashorn.internal.scripts.Script$Recompilation$43$13277$\^eval\_._silentWait([Functions, Engines, Wine]:523)
    at jdk.nashorn.internal.scripts.Script$Recompilation$42$6871A$\^eval\_.wait([Functions, Engines, Wine]:286)
    at jdk.nashorn.internal.scripts.Script$Recompilation$31$679A$\^eval\_._WineShortcutReader#run([Functions, Shortcuts, Reader]:29)
    at jdk.nashorn.internal.scripts.Script$Recompilation$30$2587A$\^eval\_.ShortcutReader#run([Functions, Shortcuts, Reader]:83)
    at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:639)
    at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:494)
    at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:393)
    ... 7 more

Process finished with exit code 0
plata commented 7 years ago

I think I also had this. Is it possible that it happens if you close Phoenicis before the application has really been closed? Can you reproduce this? What happens if you wait a bit?

madoar commented 7 years ago

I've just tried it again. But this time I waited ~5 minutes between step 3 and 4. After waiting 5 minutes I got no error. But still I think we should ensure that the application ends without an exception.

plata commented 7 years ago

I agree. Just wanted to know if my assumption is right. I guess we have to monitor the Nashorn thread and show a popup "waiting until xyz is closed" (like Steam does).

plata commented 7 years ago

This is also related to #448.

plata commented 7 years ago

Can we close this issue and add the information to #448?

madoar commented 7 years ago

Can you add the required information to #448? Afterwards I'll close this issue.

plata commented 7 years ago

Done.