パッケージのビルド
さまざまなパッケージ形式のパッケージをインストールしてビルドする方法を紹介します。
Composer
-
my-composer-package
というディレクトリを作成し、そのディレクトリに移動します:mkdir my-composer-package && cd my-composer-package
-
composer init
を実行し、プロンプトに答えます。namespaceには、GitLabのユーザー名やグループ名など、あなた固有の名前空間を入力します。
composer.json
というファイルが作成されます:{ "name": "<namespace>/composer-test", "description": "Library XY", "type": "library", "license": "GPL-3.0-only", "authors": [ { "name": "John Doe", "email": "john@example.com" } ], "require": {} }
Conan
コナンのインストール
前提条件
- コナンのバージョン1.xをインストールする必要があります。コナンのバージョン2のサポートはエピック8258で提案されています。
conan.ioの指示に従って、Conanパッケージマネージャをローカル開発環境にダウンロードしてください。
インストールが完了したら、ターミナルでConanを使用できることを確認してください:
conan --version
Conan のバージョンが出力されます:
Conan version 1.20.5
CMakeのインストール
C++とConanで開発する場合、多くの利用可能なコンパイラから選択することができます。この例ではCMakeビルド・システム・ジェネレーターを使用します。
CMakeをインストールするには:
- Mac の場合は、Homebrewを使って
brew install cmake
を実行してください。 - その他のオペレーティングシステムでは、cmake.orgの指示に従ってください。
インストールが完了したら、ターミナルでCMakeを実行し、使用できることを確認します:
cmake --version
CMakeのバージョンが出力されます。
プロジェクトの作成
パッケージ・レジストリをテストするには、C++プロジェクトが必要です。まだ持っていない場合は、Conanhello world starterプロジェクトをクローンしてください。
Conanパッケージのビルド
パッケージをビルドするには
- ターミナルを開き、プロジェクトのルート・フォルダーに移動します。
-
パッケージ名とバージョンを指定して
conan new
を実行し、新しいレシピを生成します:conan new Hello/0.1 -t
-
Conan ユーザーとチャンネルで
conan create
を実行してレシピのパッケージを作成します:conan create . mycompany/beta
インスタンスリモートを使用する場合、特定の命名規則に従う必要があります。
レシピHello/0.1@mycompany/beta
を持つパッケージが作成されます。
Conanパッケージの作成と管理の詳細については、Conanドキュメントを参照してください。
Maven
Mavenのインストール
必要な最小バージョンは次のとおりです:
- Java 11.0.5 以上
- Maven 3.6 以上
maven.apache.orgの説明に従って、ローカル開発環境用のMavenをダウンロードしてインストールしてください。インストールが完了したら、ターミナルで Maven を実行し、使用できることを確認します:
mvn --version
出力は以下のようになります:
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-04T20:00:29+01:00)
Maven home: /Users/<your_user>/apache-maven-3.6.1
Java version: 12.0.2, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.15.2", arch: "x86_64", family: "mac"
Mavenパッケージのビルド
- ターミナルを開き、プロジェクトを格納するディレクトリを作成します。
-
新しいディレクトリから、この Maven コマンドを実行して新しいパッケージを初期化します:
mvn archetype:generate -DgroupId=com.mycompany.mydepartment -DartifactId=my-project -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
引数は次のとおりです:
-
DgroupId
:パッケージを識別する一意の文字列。Mavenの命名規則に従ってください。 -
DartifactId
:DgroupId
の末尾に付加されるJAR
の名前。 -
DarchetypeArtifactId
:プロジェクトの初期構造を作成するために使用されるアーキタイプ。 -
DinteractiveMode
:バッチモードでプロジェクトを作成します(オプション)。
-
このメッセージは、プロジェクトが正常にセットアップされたことを示します:
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.429 s
[INFO] Finished at: 2020-01-28T11:47:04Z
[INFO] ------------------------------------------------------------------------
コマンドを実行したフォルダに、新しいディレクトリが表示されます。ディレクトリ名は、DartifactId
パラメータと一致する必要があります。この場合、my-project
です。
Gradle
Gradleのインストール
新しいGradleプロジェクトを作成する場合、Gradleをインストールする必要があります。gradle.orgの指示に従って、ローカル開発環境用のGradleをダウンロードしてインストールしてください。
ターミナルで Gradle を実行し、使用できることを確認します:
gradle -version
既存の Gradle プロジェクトを使用するには、プロジェクトディレクトリで Linux ではgradlew
を、Windows ではgradlew.bat
を実行してください。
出力は以下のようになります:
------------------------------------------------------------
Gradle 6.0.1
------------------------------------------------------------
Build time: 2019-11-18 20:25:01 UTC
Revision: fad121066a68c4701acd362daf4287a7c309a0f5
Kotlin: 1.3.50
Groovy: 2.5.8
Ant: Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM: 11.0.5 (Oracle Corporation 11.0.5+10)
OS: Windows 10 10.0 amd64
パッケージの作成
- ターミナルを開き、プロジェクトを格納するディレクトリを作成します。
-
この新しいディレクトリで、以下のコマンドを実行して新しいパッケージを初期化します:
gradle init
出力は次のようになります:
Select type of project to generate: 1: basic 2: application 3: library 4: Gradle plugin Enter selection (default: basic) [1..4]
-
3
と入力して、新しいライブラリプロジェクトを作成します。出力されるはずです:Select implementation language: 1: C++ 2: Groovy 3: Java 4: Kotlin 5: Scala 6: Swift
-
3
と入力して、新しい Java Library プロジェクトを作成します。出力は次のようになります:Select build script DSL: 1: Groovy 2: Kotlin Enter selection (default: Groovy) [1..2]
-
Groovy DSLで記述された新しいJavaライブラリ・プロジェクトを作成するには
1
、Kotlin DSLで記述されたプロジェクトを作成するには2
。出力は次のようになります:Select test framework: 1: JUnit 4 2: TestNG 3: Spock 4: JUnit Jupiter
-
JUnit 4 テスト・ライブラリを使用してプロジェクトを初期化するには、
1
と入力します。出力は次のようになります:Project name (default: test):
- プロジェクト名を入力するか、を押します。 ディレクトリ名をプロジェクト名として使用するには、 を入力します。
npm
npmのインストール
npmjs.comの説明に従って、Node.jsとnpmをローカル開発環境にインストールします。
インストールが完了したら、ターミナルで npm を実行し、使用できることを確認します:
npm --version
npmのバージョンが出力されます:
6.10.3
npm パッケージの作成
- 空のディレクトリを作成します。
-
そのディレクトリに移動し、空のパッケージを初期化します:
npm init
- 質問に対する回答を入力してください。パッケージ名が 命名規則に従い、レジストリが存在するプロジェクトまたはグループにスコープされていることを確認してください。
ヤーン
毛糸のインストール
npmの代わりに、classic.yarnpkg.comの指示に従ってYarnをローカル環境にインストールすることができます。
インストールが完了したら、ターミナルでYarnが使えることを確認してください:
yarn --version
Yarnのバージョンが出力されます:
1.19.1
パッケージの作成
- 空のディレクトリを作成します。
-
そのディレクトリに移動し、空のパッケージを初期化します:
yarn init
- 質問に対する回答を入力してください。パッケージ名が 命名規則に従い、レジストリが存在するプロジェクトまたはグループにスコープされていることを確認してください。
package.json
ファイルが作成されます。
NuGet
NuGetのインストール
Microsoftの指示に従ってNuGetをインストールします。Visual Studioがあれば、NuGetはすでにインストールされているでしょう。
を実行して、NuGet CLIがインストールされていることを確認します:
nuget help
出力は以下のようになります:
NuGet Version: 5.1.0.6013
usage: NuGet <command> [args] [options]
Type 'NuGet help <command>' for help on a specific command.
Available commands:
[output truncated]
PyPI
pipとtwineのインストール
最近のバージョンのpipと twineをインストールしてください。
プロジェクトの作成
テストプロジェクトを作成します。
- あなたのターミナルを開きます。
-
MyPyPiPackage
というディレクトリを作成し、そのディレクトリに移動します:mkdir MyPyPiPackage && cd MyPyPiPackage
-
別のディレクトリを作成し、そのディレクトリに移動します:
mkdir mypypipackage && cd mypypipackage
-
このディレクトリに必要なファイルを作成します:
touch __init__.py touch greet.py
-
greet.py
:def SayHello(): print("Hello from MyPyPiPackage") return
-
__init__.py
:from .greet import SayHello
-
コードをテストするには、
MyPyPiPackage
ディレクトリで Python プロンプトを起動します。python
-
次のコマンドを実行します:
>>> from mypypipackage import SayHello >>> SayHello()
プロジェクトが正常にセットアップされたことを示すメッセージが表示されます:
Python 3.8.2 (v3.8.2:7b3ab5921f, Feb 24 2020, 17:52:18)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from mypypipackage import SayHello
>>> SayHello()
Hello from MyPyPiPackage
PyPIパッケージの作成
プロジェクトを作成したら、パッケージを作成します。
- ターミナルで、
MyPyPiPackage
ディレクトリに移動します。 -
pyproject.toml
:touch pyproject.toml
このファイルにはパッケージに関するすべての情報が含まれています。このファイルの詳細については、creating
pyproject.toml
を参照してください。GitLab はPython の正規化された名前 (PEP-503) に基づいてパッケージを識別するので、パッケージ名がこれらの要件を満たしていることを確認してください。詳細はインストールのセクションを参照してください。 -
pyproject.toml
ファイルを開き、基本情報を追加します:[build-system] requires = ["setuptools>=61.0"] build-backend = "setuptools.build_meta" [project] name = "mypypipackage" version = "0.0.1" authors = [ { name="Example Author", email="author@example.com" }, ] description = "A small example package" requires-python = ">=3.7" classifiers = [ "Programming Language :: Python :: 3", "Operating System :: OS Independent", ] [tool.setuptools.packages] find = {}
- ファイルを保存してください。
-
パッケージ・ビルド・ライブラリをインストールします:
pip install build
-
パッケージをビルドします:
python -m build
出力は新しく作成されたdist
フォルダーに表示されるはずです:
ls dist
出力は以下のように表示されるはずです:
mypypipackage-0.0.1-py3-none-any.whl mypypipackage-0.0.1.tar.gz
これでパッケージをパッケージレジストリに公開する準備ができました。