こんにちは。よっしーです。
さて今回は、タイトルにもある通り、
C#(.NET Framework)で作ったコンソールアプリをLinux上で動かす。
ということをご紹介したいと思います。
.NET Framework って Microsoft が提供してるから、
.NET Framework = Windows というイメージがありますが、
最近ではLinux上でも動作することが出来るんです。
さっそく Visual Studio 2017 Community でチャレンジしてみましょう。
プロジェクトの作成画面から以下を選択します。
→ Visual C#
→ .NET Core
→ コンソール アプリ(.NET Core)
実行すると 「Hello World!」 と出力されるテンプレートが作成されます。
今回は、.NET Framework が Linux上で動作するかを確かめたいので、
Systemのクラスライブラリを使って簡単なサンプルを組んでみました。
<内容>
・カレントディレクトリパスを取得
・コマンドライン引数とカレントディレクトリ名をコンソール出力
・カレントディレクトリにtest.txtを作成し、コマンドライン引数の内容をそのファイルへ出力
あとは、適当に Visual Studio 上から実行する際のコマンドライン引数と、
作業するディレクトリ(カレントディレクトリ)を情報として設定します。
Visual Studio上で実行してみましょう。もちろんWindows上で動作します。
動作結果として、
設定したコマンドライン引数とカレントディレクトリパスがターミナル上に出力され、
出力された test.txt にはコマンドライン引数の内容が出力されます。
まぁ、実装通りですね。。。
下準備はここまでです。
で、このプログラムを Linux 上で動作させるのが今回の目的となりますので、
次に進めていきましょう。
ビルドメニューから、○○○○(プロジェクト名) の発行 というのがあるので選択します。
次の画面に進むので、続けて 発行 を選択します。
すると、対象のディレクトリに以下のような生成物が出力されます。
DLLファイルが出力されていることがわかりますが、これが Linux上 で動作する
プログラムファイルとなります。
DLLなのに実行ファイル?と、Windows脳だとちょっとシックリこないのですが、
Linux で動作させる場合は、dotnet という実行ファイルに このDLLファイルを
指定して動作させるので、そんなに違和感は感じなくなります。
今回はここまでとさせてもらいます。
ではまた~。
0 件のコメント:
コメントを投稿