Recognise when running in Eclipse
[lgpl/argeo-commons.git] / org.argeo.cms.jshell / src / org / argeo / cms / jshell / CmsJShell.java
index a3fcf3f808a2be65cb2921c8fe13b2a293f84225..91a11ee71d3a2ec59fadffe8fb513a53dedc4e4e 100644 (file)
@@ -40,7 +40,12 @@ public class CmsJShell {
 
        public void start() throws Exception {
                // TODO better define application id, make it configurable
-               String applicationID = cmsState.getStatePath("").getFileName().toString();
+               String applicationID;
+               if (Files.exists(cmsState.getStatePath("dev.properties"))) { // in Eclipse
+                       applicationID = cmsState.getStatePath("").getFileName().toString();
+               } else {
+                       applicationID = cmsState.getStatePath("").getParent().getFileName().toString();
+               }
 
                // TODO centralise state run dir
                stateRunDir = OS.getRunDir().resolve(applicationID);
@@ -154,6 +159,11 @@ public class CmsJShell {
                } catch (IOException e) {
                        log.error("Cannot remove " + jshLinkedDir);
                }
+               try {
+                       Files.delete(jtermLinkedDir);
+               } catch (IOException e) {
+                       log.error("Cannot remove " + jtermLinkedDir);
+               }
        }
 
        public void setCmsState(CmsState cmsState) {