如何在IntelliJ IDEA中设置Javacc

10
我搜索了插件仓库并下载了javacc插件。
现在我有了这个插件,如何在IntelliJ中使用它呢?
我的项目看起来像这样。 enter image description here

1
你有找到什么东西吗? - Paraneetharan Saravanaperumal
3个回答

0

另一种方法是将JavaCC任务嵌入到Idea gradle项目中(基于kotlin dsl的代码片段):

buildscript {
    dependencies {
        classpath("net.java.dev.javacc", "javacc", "7.0.10")
    }
}

sourceSets["main"].java.srcDir("src/main/javacc")

...
...
...

task("assembleJavacc") {
    val outDir = "$projectDir/src/main/javacc/your/gen/package/dir"
    doLast {
        arrayOf(
            "-JDK_VERSION=1.8", "-OUTPUT_DIRECTORY=$outDir",
            "$projectDir/src/main/resources/ParserDefinition.jj"
        ).also {
            JJTree().main(it).takeIf { rs -> rs == 0 }
                ?: throw RuntimeException("jjtree error: ${it.contentToString()}")
        }
        arrayOf("-OUTPUT_DIRECTORY=$outDir", "$outDir/ParserDefinition.jj.jj")
            .also {
                Main.mainProgram(it).takeIf { rs -> rs == 0 }
                    ?: throw RuntimeException("javacc error: ${it.contentToString()}")
            }
    }
}

-1
有点晚回复,但也许可以帮助到某些人。据我所知,IntelliJ IDEA 的 JavaCC 插件仅支持文件编辑,而不支持生成 Java 文件。因此,您需要使用命令行。下载 JavaCC 并将 bin 目录添加到您的路径中。 bin 目录应该长这样:
javacc      jjdoc       jjrun       jjtree.bat
javacc.bat  jjdoc.bat   jjtree      lib

lib 文件夹中应该包含你的 javaccX.jar 文件。现在你可以通过命令行生成你的 Java 文件:

javacc ./my-grammar-file.jj

没有“bin”目录。 - user14787178
@VeryGudJavaDev,/bin目录的名称显然已更改为/scripts。不过,操作步骤应该仍然相同。 - Robin Keskisarkka

-4
在这种情况下,选择“Assignment3”,右键单击,选择“打开模块设置”,确保中间列中选择了“Assignment3”。在右侧列中,单击“依赖项”选项卡,您将看到一个下拉菜单,标记为“模块SDK:”这是您指定JDK位置的地方。选择“新建...”,如果使用插件,则选择“IntelliJ平台插件SDK”。弹出窗口将允许您导航到您下载的插件Java SDK的位置;请务必选择“bin”、“jre”、“lib”等目录的父目录,而不是实际的“bin”目录本身。但是,如果您下载了JDK而不是插件(我自己倾向于外部JDK),则应选择“JDK”,导航到JDK的父级-“bin”等目录,并选择该目录。然后单击“确定”进行选择。然后单击“应用”,您就已经为项目模块设置了JDK。

1
我在2015年回答过这个问题。现在已经是2018年了,我们使用的IntelliJ版本比当时最新的版本要高出很多。所以关于上述目录,我可以肯定地说它们已经过时了。 - Matt Campbell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接