8

こんにちは
私はXTend(http://xtend-lang.org)を見つけました、そしてそれは本当に素晴らしいですね!しかし、この言語用のスタンドアロンのコマンドラインコンパイラは表示されません。皆既日食の下でしか走らないようです。調査を行ったところ、コマンドラインコンパイラが搭載されているとのことでしたが、ダウンロードリンクが見つかりませんでした。
コンパイラーはスタンドアロンで存在しますか、それとも使用するためにEclipseが必要ですか?
よろしく

4

2 に答える 2

7

文書化されていませんが、Xtendコードベースには実際にコマンドラインコンパイラがあります。これは、Mavenプラグインで使用されているものと同じです(Xtendホームページに文書化されています)。

Mavenプラグインが機能しない場合は、スタンドアロンのjarバージョンをMavenリポジトリ(http://build.eclipse.org/common/xtend/maven/org/eclipse/xtend/org.eclipse )から直接ダウンロードできます。 .xtend.standalone / 2.3.1 /(バージョン2.3.1の場合)、およびそこからorg.eclipse.xtend.core.compiler.batch.Mainクラスを実行します。

このクラスはxtendコンパイラを実行し、使用法情報を表示できます(ソースファイルからも読み取ることができます)。

于 2012-12-30T18:58:45.843 に答える
2

xtendスタンドアロンコンパイラを使用できます。私の場合、次の.jarファイルをxtendcという名前のフォルダーにコピーしました。

com.google.guava_21.0.0.v20170206-1425.jar
com.google.inject_3.0.0.v201312141243.jar
javax.inject_1.0.0.v20091030.jar
org.antlr.runtime_3.2.0.v201101311130.jar
org.apache.log4j_1.2.15.v201012070815.jar
org.eclipse.emf.common_2.15.0.v20180914-1817.jar
org.eclipse.emf.ecore.xmi_2.15.0.v20180706-1146.jar
org.eclipse.emf.ecore_2.16.0.v20181124-0637.jar
org.eclipse.equinox.common_3.10.200.v20181021-1645.jar
org.eclipse.jdt.core_3.16.0.v20181130-1748.jar
org.eclipse.xtend.core_2.16.0.v20181203-1347.jar
org.eclipse.xtend.lib.macro_2.16.0.v20181203-0507.jar
org.eclipse.xtext.common.types_2.16.0.v20181203-0528.jar
org.eclipse.xtext.util_2.16.0.v20181203-0514.jar
org.eclipse.xtext.xbase.lib_2.16.0.v20181203-0507.jar
org.eclipse.xtext.xbase_2.16.0.v20181203-0528.jar
org.eclipse.xtext_2.16.0.v20181203-0514.jar
org.objectweb.asm_7.0.0.v20181030-2244.jar

次に、そのフォルダーで、バッチコンパイラのCLIメインクラスを実行しました。

java -cp "*" org.eclipse.xtend.core.compiler.batch.Main -d <path-to-xtend-gen-folder>  -useCurrentClassLoader <path-to-src-folder>

メインクラスのCLIの使用法は、次のように文書化されています。

Usage: Main <options> <source directories>
where possible options include:
-d <directory>                      Specify where to place generated xtend files
-tp <path>                          Temp directory to hold generated stubs and classes
-cp <path>                          Specify where to find user class files
-encoding <encoding>                Specify character encoding used by source files
-javaSourceVersion <version>        Create Java Source compatible to this version. Can be: 1.5, 1.6, 1.7, 1.8, 9, 10
-noSuppressWarningsAnnotation       Don't put @SuppressWarnings() into generated Java Code
-generateGeneratedAnnotation        Put @Generated into generated Java Code
-includeDateInGeneratedAnnnotation  If -generateGeneratedAnnotation is used, add the current date/time.
-generateAnnotationComment <string> If -generateGeneratedAnnotation is used, add a comment.
-useCurrentClassLoader              Use current classloader as parent classloader
-writeTraceFiles                    Write Trace-Files

そのため、そこにクラスパスを渡す必要があります。

于 2019-01-04T08:21:04.797 に答える