【问题标题】:Errors when running Language-Solution in MPS在 MPS 中运行 Language-Solution 时出错
【发布时间】:2020-05-19 02:28:17
【问题描述】:

我正在使用 jetbrains MPS 开发 DSL。使用起来并不明显,但到目前为止我在设计部分取得了成功。 可以右键单击解决方案节点并“运行”它,假设该语言是可执行的(扩展 execution.util)。另外,我使用单独开发的 jar 作为库(由生成器使用)。

我新建一个项目来测试,尽可能简单,在生成器中添加了一些额外的节点和循环,出现错误并且无法撤消。

据我所知,有几种可能的错误来源。

  • 依赖关系(它们在 MPS 中很棘手)
  • 我的罐子
  • 错误的缓存文件左右

执行“运行”会导致以下错误:

error: could not find or load main class MySolution.package.map_concept

你们中的一些人有这方面的经验吗? 告诉我,如果有一些额外的信息会有所帮助。

【问题讨论】:

    标签: dsl mps


    【解决方案1】:

    您似乎已将 jar 文件作为模型添加到语言中,这使其对解决方案不可见。按照https://confluence.jetbrains.com/display/MPSD32/Getting+the+dependencies+right#Gettingthedependenciesright-AddingexternalJavaclassesandjarstoaprojectruntimesolutions 的说明创建一个单独的库解决方案对我有用。

    【讨论】:

      【解决方案2】:

      在我看来,这似乎是生成器的问题。您是否完全重建了项目 - 右键单击​​结构树中的“项目”节点? 根映射模板是否正确?如果你能分享你的项目,我可以看看。

      【讨论】:

      • 我已将你添加到我的 git-repo 中,希望没关系。重建项目或制作解决方案会导致一堆错误,说无法解决导入问题。我红了,这是可以反映的。
      【解决方案3】:

      一个小提示可以为我节省一些时间,也可以为其他人解决这个问题,即使您按照其他答案中的说明进行操作也是如此。

      当在 Java 选项卡上包含库后提示您将库添加到模块时,如果您已经将它们包含在 Common 选项卡上,则关闭窗口。否则,尽管已添加两次,但仍列出一次,导致编译失败。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-06-28
        • 2020-06-02
        • 2018-08-16
        • 2015-11-08
        • 2018-07-21
        • 1970-01-01
        • 2012-04-18
        • 1970-01-01
        相关资源
        最近更新 更多