PathFinder
val allClasses = (outputPath ##) ** "*.class"
使用该PathFinder和“compileClasspath”顶级方法,可以构造这样的任务,该任务将使用当前项目的类路径运行gcj,并将所有.class文件组合到一个gcjFile中:
val gcj = "/usr/local/bin/gcj"
val gcjFile = "target/my_executable.o"
val allClasses = (outputPath ##) ** "*.class"
lazy val gcjCompile = execTask {
<x>{gcj} --classpath={compileClasspath.get.map(_.absolutePath).mkString(":")} -c {allClasses.get.map(_.absolutePath).mkString("-c ")} -o {gcjFile}</x>
} dependsOn(compile) describedAs("Create a GCJ executable object")