NetLogo / NetLogo/Python-Extension
Py:run unable read child process output
还没有人认领这个 Issue。
- 主要语言
- Scala
- 星标
- 31
- 派生
- 16
- PR 合并指标
- 30 天内没有已合并 PR
描述
Environment: Netlogo 6.3.0
I have tried on Python version 3.11, 3.10 and 3.9.13.
Netlogo is unable to read the code written in python, even the code is put in py:run.
But it works on other's pc. Not sure why this error happens :(
Error code:
Extension exception: Unable to read child process output. Try running the command again
error while manufacturer 21536 running PY:RUN
called by procedure CALIBRATION-GETLEARINGRATE (C:\Users\Joule\Desktop\ev market model 0331\manufacturer.nls)
called by procedure SETUP-MANUFACTURER (C:\Users\Joule\Desktop\ev market model 0331\manufacturer.nls)
called by procedure SETUP
called by Button 'setup'
org.nlogo.nvm.WrappedExtensionException: Extension exception: Unable to read child process output. Try running the command again
at org.nlogo.prim._extern.perform(_extern.java:40)
at org.nlogo.nvm.Context.runExclusive(Context.java:133)
at org.nlogo.nvm.ExclusiveJob.run(ExclusiveJob.scala:39)
at org.nlogo.nvm.Context.runExclusiveJob(Context.java:177)
at org.nlogo.prim._createturtles.perform(_createturtles.java:56)
at org.nlogo.nvm.Context.stepConcurrent(Context.java:107)
at org.nlogo.nvm.ConcurrentJob.step(ConcurrentJob.scala:65)
at org.nlogo.job.JobThread.runPrimaryJobs(JobThread.scala:133)
at org.nlogo.job.JobThread.$anonfun$run$1(JobThread.scala:68)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
at scala.util.control.Exception$Catch.apply(Exception.scala:228)
at org.nlogo.api.Exceptions$.handling(Exceptions.scala:41)
at org.nlogo.job.JobThread.run(JobThread.scala:66)
Caused by: org.nlogo.api.ExtensionException: Unable to read child process output. Try running the command again
at org.nlogo.languagelibrary.Subprocess.receive(Subprocess.scala:432)
at org.nlogo.languagelibrary.Subprocess.$anonfun$exec$4(Subprocess.scala:225)
at org.nlogo.languagelibrary.Subprocess.$anonfun$async$1(Subprocess.scala:410)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
NetLogo 6.3.0
main: org.nlogo.app.AppFrame
thread: JobThread
OpenJDK 64-Bit Server VM 17.0.3 (BellSoft; 17.0.3+7-LTS)
operating system: Windows 11 10.0 (amd64 processor)
Scala version 2.12.16
JOGL: (3D View not initialized)
OpenGL Graphics: (3D View not initialized)
model: main
02:15:56.944 SwitchedTabsEvent (org.nlogo.app.Tabs) AWT-EventQueue-0
02:15:56.934 RuntimeErrorEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) AWT-EventQueue-0
02:15:56.923 JobRemovedEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) JobThread
02:15:56.920 OutputEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) AWT-EventQueue-0
02:15:56.919 OutputEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) AWT-EventQueue-0
02:15:56.917 OutputEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) AWT-EventQueue-0
02:15:56.915 OutputEvent (org.nlogo.app.App$$anon$4 (org.nlogo.window.GUIWorkspace)) AWT-EventQueue-0
02:15:56.843 InterfaceGlobalEvent (org.nlogo.app.interfacetab.InterfacePanel$$anon$1 (org.nlogo.window.SliderWidget)) AWT-EventQueue-0
02:15:56.843 InterfaceGlobalEvent (org.nlogo.app.interfacetab.InterfacePanel$$anon$1 (org.nlogo.window.SliderWidget)) AWT-EventQueue-0
02:15:56.843 InterfaceGlobalEvent (org.nlogo.app.interfacetab.InterfacePanel$$anon$1 (org.nlogo.window.SliderWidget)) AWT-EventQueue-0
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,使用报告中的 NetLogo 和 Python 版本,在 Windows 11 上复现 py:run 失败。以提供的堆栈跟踪为切入点,检查 Subprocess.scala:432 附近的子进程处理,尤其是 receive。完成的标准是:报告的配置能够可靠地读取子进程输出,或者将失败范围缩小到一个已记录的环境条件。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python, scala
- 领域
- tooling
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100