Guorong Xu created ZEPPELIN-5989: ------------------------------------ Summary: Default notebook path resolving failed on windows Key: ZEPPELIN-5989 URL: https://issues.apache.org/jira/browse/ZEPPELIN-5989 Project: Zeppelin Issue Type: Bug Components: zeppelin-server Environment: sys: windows 10
IDE: IDEA branch: master Reporter: Guorong Xu I'm trying to start the zeppelin without configuration file in my IDE on windows, and i get error as below: ```bash java.io.IOException: java.net.URISyntaxException: Illegal character in path at index 2: ./\notebook at org.apache.zeppelin.notebook.repo.VFSNotebookRepo.setNotebookDirectory(VFSNotebookRepo.java:76) at org.apache.zeppelin.notebook.repo.GitNotebookRepo.init(GitNotebookRepo.java:74) at org.apache.zeppelin.notebook.repo.NotebookRepoSync.init(NotebookRepoSync.java:83) at org.apache.zeppelin.notebook.repo.NotebookRepoSync.<init>(NotebookRepoSync.java:62) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.glassfish.hk2.utilities.reflection.ReflectionHelper.makeMe(ReflectionHelper.java:1356) at org.jvnet.hk2.internal.ClazzCreator.createMe(ClazzCreator.java:248) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:342) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463) at org.glassfish.hk2.utilities.ImmediateContext.findOrCreate(ImmediateContext.java:111) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93) at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:679) at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:54) at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188) at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:205) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131) at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176) at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93) at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:679) at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:54) at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188) at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:205) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131) at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176) at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93) at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:679) at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:54) at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188) at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:205) at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334) at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59) at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131) at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176) at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98) at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:93) at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:67) at org.glassfish.hk2.utilities.ServiceLocatorUtilities.getService(ServiceLocatorUtilities.java:669) at org.apache.zeppelin.server.ZeppelinServer.main(ZeppelinServer.java:249) ``` Problem I found is that org.apache.zeppelin.conf.ZeppelinConfiguration.ConfVars defines ZEPPELIN_HOME as './' and using File.separator as joint. So, URI parse failed. Could we define default ZEPPELIN_HOME as '.' and using Paths.get to join two part of notebook or other path? -- This message was sent by Atlassian Jira (v8.20.10#820010)