Skip to main content

プロジェクトを管理する

各プロジェクトの dfx.json 設定ファイルを変更することで、個々のプロジェクトに対する重要な設定のいくつかを変更することができます。これらの設定は dfx config コマンドを使用してプログラムで変更することもできますし、 dfx.json ファイルを直接手動で編集することもできます。

ソースディレクトリを変更する方法

dfx build コマンドを使用してプロジェクトのソースコードをコンパイルする前に、Dapp のソースコードを保存するデフォルトの場所を確認しておくとよいでしょう。新しいプロジェクトを作成するときに使う名前は、デフォルトでひとつの Canister(canister_name)とひとつのアセット Canister(canister_name_assets)とし、Dapp のソースコードは src/canister_name ディレクトリにあることが慣習です。同様に、フロントエンドのソースコードは src/canister_name_assets/src ディレクトリに、フロントエンドのアウトプットは dist/canister_name_assets ディレクトリに置かれることがデフォルトとなります。

アプリの複雑さやアーキテクチャーによっては、アプリのソースコード、フロントエンドのソースコード、フロントエンドのアウトプットのデフォルトの場所を変更したいと思うかもしれません。

例えば、シンプルなアプリの場合、ディレクトリをひとつ削除し、ソースコードを src ディレクトリに配置することができます:

  "main": "src/main.mo",

より複雑な Dapps の場合は、多階層のディレクトリ構造を採用するとよいでしょう:

"canisters": {
"profiles": {
"main": "src/profiles/utils/main.mo"
},
"events": {
"main": "src/events/calendar/main.mo"
},
"media": {
"main": "src/events/reports/main.mo"
}
}

ソースコードのディレクトリのデフォルトの設定を変更する場合は、dfx.json 設定ファイルの設定がファイルシステム上のディレクトリの位置と一致していることを確認してください。

メイン Dapp のファイル名を変更する方法

dfx build コマンドを使用してプロジェクトのソースコードをコンパイルする前に、Dapp のソースコードに使用されている場所とファイル名を確認する必要があります。

例えば、factorial というアプリの Canister をビルドする場合、そのアプリのソースコードが src/math/factorial.mo にあるのなら、設定ファイルの canisters セクションの main 設定で正しいパスを指定しているかどうか確認する必要があります。

例:

"main": "src/math/factorial.mo",

Dapp ファイル名の設定を変更しても、dfx build コマンドがコンパイルするソースコードを探す場所にしか影響しないことを覚えておいてください。設定ファイルで変更を加えても、ファイルシステム上のファイルやディレクトリの名前は変更されません。メインの Dapp ファイルへのパスやファイル名を変更した場合は、プロジェクトディレクトリ内の名前と場所を変更するようにしてください。

Dapp フロントエンドを提供する場所を変更する方法

Dapp フロントエンドを提供するためのデフォルトのホスト名とポート番号は、設定ファイル dfx.json にあるローカルネットワークの設定を修正することで変更可能です。

例えば、bind の設定を変更することで、ローカルネットワークの IP アドレスを変更することができます:

"networks": {
"local": {
"bind": "192.168.47.1:8000",
"type": "ephemeral"
}
}