Zakku-Spot.com

気になる情報のリサーチブログ - Reserch blog of information you care about -

[基礎知識]Kotlinコマンドラインコンパイラの使い方

4月 22, 2023
0 0
Read Time:1 Minute, 20 Second

すべての Kotlin リリースには、スタンドアロン バージョンのコンパイラが付属しています。最新バージョンは、手動またはパッケージ マネージャー経由でダウンロードできます。

※コマンドライン コンパイラのインストールは、Kotlin を使用するための必須の手順ではありません。Kotlin アプリケーションを作成する一般的な方法は、IDE ( IntelliJ IDEAまたはAndroid Studio )を使用することです。追加のコンポーネントを必要とせずに、すぐに使用できる完全な Kotlin サポートを提供します。IDE で Kotlin を使い始める方法を学びます。

1.コンパイラをインストールする

手動インストール

(1)GitHub Releaseから最新バージョン (skotlin-compiler-1.8.20.zip) をダウンロードします。

(2)タンドアロン コンパイラをディレクトリに解凍し、必要に応じてそのbinディレクトリをシステム パスに追加します。このbinディレクトリには、Windows、macOS、および Linux で Kotlin をコンパイルして実行するために必要なスクリプトが含まれています。

※DKMAN! 経由で Kotlin コンパイラをインストールするには、ターミナルで次のコマンドを実行します。
> sdk install kotlin

2.アプリケーションを作成して実行する

(1)"Hello, World!"を表示する簡単なアプリケーションを Kotlin で作成します。hello.ktお気に入りのエディターで、次の行を含む新しいファイルを作成します。

   fun main() { println("Hello, World!") }

(2)Kotlin コンパイラを使用してアプリケーションをコンパイルします。

   kotlinc hello.kt -include-runtime -d hello.jar

※オプション(-include-runtime)は、生成されたクラス ファイルの出力パスを示します。これは、ディレクトリまたは.jar-dファイルのいずれかです。このオプションは、Kotlin ランタイム ライブラリを含めることで、結果の.jarファイルを自己完結型で実行可能にします。

※使用可能なすべてのオプションを表示するには、以下を実行します。

   kotlinc -help

(3)アプリケーションを実行します。

   java -jar hello.jar

3.ライブラリをコンパイルする

他の Kotlin アプリケーションで使用するライブラリを開発している場合は、 Kotlin ランタイムを含めずに.jarファイルをビルドできます。

   kotlinc hello.kt -d hello.jar

この方法でコンパイルされたバイナリは Kotlin ランタイムに依存するため、コンパイルされたライブラリが使用されるときは常に Kotlin ランタイムがクラスパスに存在することを確認する必要があります。

※以下のスクリプトを使用して、Kotlin コンパイラによって生成されたバイナリを実行することもできます。

   kotlin -classpath hello.jar HelloKt

   ※HelloKtは、Kotlin コンパイラがhello.kt という名前のファイルに対して生成するメイン クラス名です。

4.REPL を実行する

パラメーターなしでコンパイラーを実行して、対話型シェルを使用できます。このシェルでは、有効な Kotlin コードを入力して結果を確認できます。

5.スクリプトを実行する

Kotlin はスクリプト言語としても使用できます。スクリプトは、.kts最上位の実行可能コードを含む Kotlin ソース ファイル ( ) です。

import java.io.File

// Get the passed in path, i.e. “-d some/path” or use the current path.

val path = if (args.contains(“-d”)) args[1 + args.indexOf(“-d”)]

     else “.”

val folders = File(path).listFiles { file -> file.isDirectory() }

folders?.forEach { folder -> println(folder) }

スクリプトを実行するには、-script対応するスクリプト ファイルとともにオプションをコンパイラに渡します。

   kotlinc -script list_folders.kts — -d <path_to_folder_to_inspect>

Kotlin は、外部プロパティの追加、静的または動的な依存関係の提供など、スクリプトのカスタマイズの実験的なサポートを提供します。カスタマイズは、いわゆるスクリプト定義(適切なサポート コードを含む注釈付きの kotlin クラス) によって定義されます。スクリプトのファイル名拡張子は、適切な定義を選択するために使用されます。Kotlin カスタム スクリプトの詳細については、こちらをご覧ください。

適切な jar がコンパイル クラスパスに含まれている場合、適切に準備されたスクリプト定義が検出され、自動的に適用されます。-script-templatesまたは、オプションをコンパイラに渡すことで、定義を手動で指定できます。

   kotlinc -script-templates org.example.CustomScriptDefinition -script custom.script1.kts

詳細については、KEEP-75を参照してください。

Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

コメントを残す