2013-09-10 149 views

回答

3

這裏有一個用於Frege的Maven插件:https://github.com/talios/frege-maven-plugin但我不確定它與當前Frege版本的最新版本。

進一步據我所知,弗雷格jar仍然沒有在任何中央存儲庫,所以你需要在一些本地存儲庫中使用該插件。例如,https://github.com/talios/frege-testing/blob/master/pom.xml

您也可以調用的Maven通過螞蟻的弗雷格編譯器(不是最好的方式,但仍是一個選項):

<plugin> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.7</version> 
    <executions> 
     <execution> 
     <phase>compile</phase> 
     <configuration> 
      <target> 
      <property name="compile_classpath" refid="maven.compile.classpath" /> 
      <property name="outputDir" 
       value="${project.build.outputDirectory}" /> 
      <property name="sourceDir" value="src/main/frege" /> 
      <property name="fregec" value="${frege:frege:jar}" /> 
      <exec executable="java" failonerror="true"> 
       <arg value="-Xss1m" /> 
       <arg value="-Dfrege.javac=javac" /> 
       <arg value="-classpath" /> 
       <arg value="${compile_classpath}" /> 
       <arg value="frege.compiler.Main" /> 
       <arg value="-d" /> 
       <arg path="${outputDir}" /> 
       <arg value="${sourceDir}/helloworld/Foo.fr" /> 
       <arg value="${sourceDir}/helloworld/bar.fr" /> 
      </exec> 
      </target> 
     </configuration> 
     <goals> 
      <goal>run</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 

這裏也frege:frege:jar是指在本地存儲庫中的弗雷格罐子。如果您的Frege代碼有其他Java依賴項或其他方式,則最好將它們作爲單獨的模塊(Java模塊和Frege模塊),以便編譯順序(Java和Frege編譯)由模塊已建成。

+0

謝謝!由於無論如何都需要下載/安裝frege jar,所以我認爲爲它編寫一個小的gradle任務。 – Dierk

+0

那太棒了! –

+0

通過gradle實現構建自動化的第一步是在[現實世界中](https://github.com/Dierk/Real_World_Frege/blob/master/build.gradle) – Dierk

相關問題