我如何安装Preon?

时间:2014-09-21 21:57:51

标签: java intellij-idea preon

我正在尝试安装preon并在IntelliJ中运行它。

我已从https://github.com/preon/preon下载了源代码。

然后我用IntelliJ打开项目。

然后我下载pecia并将其作为模块导入到preon项目中。

然后我尝试在... preon-master / preon-samples / preon-sample-bmp / src / test / java / org / codehaus / preon / sample / bmp / BitmapFileTest.java中运行BitmapFileTest程序

以下是我收到的前几个错误:

...前子主/前子-EL / SRC /主/ JAVA /组织/ Codehaus的/前子/ EL / Expressions.java

  • 错误:(151,24)java:找不到符号符号:class LimboWalker位置:类org.codehaus.preon.el.E​​xpressions
  • 错误:(154,9)java:找不到符号符号:class LimboLexer location:class org.codehaus.preon.el.E​​xpressions
  • 错误:(154,32) java:找不到符号符号:class LimboLexer location: class org.codehaus.preon.el.E​​xpressions
  • 错误:(156,9)java:不能 找到符号符号:class LimboParser location:class org.codehaus.preon.el.E​​xpressions
  • 错误:(156,34)java:找不到 符号符号:类LimboParser位置:类 org.codehaus.preon.el.E​​xpressions
  • 错误:(160,9)java:找不到 符号符号:类LimboWalker位置:类 org.codehaus.preon.el.E​​xpressions
  • 错误:(160,55)java:找不到 符号符号:类LimboWalker位置:包 org.codehaus.preon.el

由于某种原因,编译器无法在自己的项目中找到Limbo类。

我需要做些什么才能构建和运行此示例项目?

1 个答案:

答案 0 :(得分:2)

问题是这些类是由来自Limbo.g的ANTLR生成的 LimboWalker.g,但IntelliJ不会自动知道如何使用ANTLR来构建它们。

IntelliJ的ANTLRWorks插件支持ANTLR版本3, 但它最后更新于2009年,似乎在IntelliJ 13中不起作用。

有一个较新的“ANTLR v4语法插件”,它被积极维护,但是 它仅适用于ANTLR 4,而preon仍然在ANTLR 3上。

但是ANTLR的Maven插件是稳定的并且可以构建它。

您需要做的是:右键单击Project中的preon-el,然后选择 Maven→生成源和更新文件夹菜单选项。这会打电话 Maven插件从LimboWalker.class生成LimboWalker.g等等。

然后选择Build→Make Project,BitmapFileTest将运行。