我搜索了插件仓库并下载了javacc插件。
现在我有了这个插件,如何在IntelliJ中使用它呢?
我的项目看起来像这样。
现在我有了这个插件,如何在IntelliJ中使用它呢?
我的项目看起来像这样。
另一种方法是将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()}")
}
}
}
bin
目录添加到您的路径中。 bin
目录应该长这样:javacc jjdoc jjrun jjtree.bat
javacc.bat jjdoc.bat jjtree lib
在 lib
文件夹中应该包含你的 javaccX.jar
文件。现在你可以通过命令行生成你的 Java 文件:
javacc ./my-grammar-file.jj