Я пытаюсь настроить Apache Zeppelin 0.8.1 на Windows 10.
В основном я хочу запустить интерпретатор python, чтобы позже вызвать его через rest api, но мне трудно заставить интерпретатор работать.
Я добавил python в переменную окружения пути и теперь могу вызываться в cmd:
python
в конфигурации интерпретатора Python Zeppelin свойство zeppelin.python по умолчанию имеет значение python
, и в документации указано, что этого достаточно, если команда находится в пути.
Когда я пытаюсь вызвать интерпретатор по простой команде, такой как '%python print 1+1'
, я получаю следующую трассировку стека:
org.apache.thrift.TException: java.lang.reflect.InvocationTargetException
at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer.createInterpreter(RemoteInterpreterServer.java:320)
at org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Processor$createInterpreter.getResult(RemoteInterpreterService.java:1799)
at org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Processor$createInterpreter.getResult(RemoteInterpreterService.java:1784)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:285)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.reflect.InvocationTargetException
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.apache.zeppelin.interpreter.remote.RemoteInterpreterServer.createInterpreter(RemoteInterpreterServer.java:309)
... 8 more
Caused by: java.lang.RuntimeException: java.io.IOException: The system cannot find the path specified
at org.apache.zeppelin.python.PythonInterpreter.<init>(PythonInterpreter.java:105)
... 13 more
Caused by: java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createTempFile(File.java:2024)
at org.apache.zeppelin.python.PythonInterpreter.<init>(PythonInterpreter.java:102)
... 13 more
То, что я пытался:
- Python версии 2 и 3
- Свойство Zeppelin имеет абсолютный путь (также описано в документации)
- JDK 7 вместо 8, но это жалуется на минорную версию
Я также заметил, что папка журналов Zeppelin всегда пуста, что кажется ненормальным.
Edit:
Я не решил проблему на своем локальном хосте, я переключился на докеризированную версию, которая хорошо работает из коробки, отбросив этот комментарий для новичков Zeppelin, таких как я, чтобы начать с Docker.
Любая помощь приветствуется, спасибо заранее!