【发布时间】:2014-04-05 01:27:35
【问题描述】:
我有大量真实的 NetLogo 文件,准备用于课程和演示,并希望将它们发布到网络上——至少让它们可以访问。我不想将它们一个接一个地手动保存在小程序中,而是希望批量导出这些 NetLogo 文件(作为小程序或其他方式)。这可能吗?
有一个更具体的related question。目前的问题更笼统,要求可能更广泛的解决方案,即不一定基于 Java 小程序的解决方案。
【问题讨论】:
我有大量真实的 NetLogo 文件,准备用于课程和演示,并希望将它们发布到网络上——至少让它们可以访问。我不想将它们一个接一个地手动保存在小程序中,而是希望批量导出这些 NetLogo 文件(作为小程序或其他方式)。这可能吗?
有一个更具体的related question。目前的问题更笼统,要求可能更广泛的解决方案,即不一定基于 Java 小程序的解决方案。
【问题讨论】:
NetLogo 中的小程序保护程序所做的只是在 HTML 模板中填写一些内容:模型的名称、大小(有关详细信息,请参阅我对您的其他问题的回答)以及任何额外 JAR 的名称如果模型使用任何使用额外 JAR 的扩展。您可以查看https://github.com/NetLogo/NetLogo/blob/5.0.x/src/main/org/nlogo/app/AppletSaver.scala 上的官方小程序保护程序的代码,然后自己执行类似的操作,或者自己从 Java(或您最喜欢的 JVM 语言)实际调用它。 AppletSaver 的单元测试展示了如何在 NetLogo GUI 之外调用代码的一些示例:https://github.com/NetLogo/NetLogo/blob/5.0.x/src/test/org/nlogo/app/AppletSaverTests.scala
作为一个存在证明,可以滚动您自己的全自动版本,我们曾经在 NetLogo 网站上为模型库模型的小程序提供服务,而 Reuven Lerner 自己为 NetLogo 上的小程序完成了http://modelingcommons.org/ 的建模共享。
我们正在努力开发基于 JavaScript 和 HTML5 的 NetLogo 小程序替代品。它的代号为乌龟。但它还没有真正准备好(截至 2014 年 4 月)。有关这方面的更多详细信息,请参阅 https://github.com/NetLogo/NetLogo/wiki/Applets 和 https://github.com/NetLogo/NetLogo/wiki/Tortoise
我不建议在小程序上投入太多精力,因为(如小程序链接中所述)它们本质上是死技术。可以说,他们身上还剩下的那一点点生命正在迅速消退。
【讨论】: