77

Xcode 10 の新しいビルド システムを開発に使用したいのですが、継続的インテグレーション システムでのビルドが失敗します。これは、xcarchive生成されたものに問題があるためです: にInfo.plistキーとその中の情報xcarchiveがありません!ApplicationProperties

レガシービルドシステムに戻すと、これが修正されることがわかりました。これは、ワークスペースの設定 ([ファイル] > [ワークスペースの設定…] > [ビルド システム]) で行うことができます。しかし、私は開発用に新しいビルド システムを維持し、CI ビルドにはレガシー ビルド システムのみを使用したいと考えています。

xcodebuildワークスペースを変更せずにレガシー ビルド システムを使用する方法はありますか?

4

5 に答える 5

110

:には (まだ文書化されていない) フラグがありxcodebuildます-UseModernBuildSystem=<value>。この値は、レガシー (「オリジナル」) ビルド システムを使用するか、または新しい0ビルドシステムを使用するかのいずれかです。NO1YES

例えば:

xcodebuild -workspace Foo.xcworkspace -scheme Bar -configuration Release -archivePath /path/to/Foo.xcarchive clean archive -UseModernBuildSystem=NO

(-UseNewBuildSystem=<value>同様に機能するようです。このフラグは Xcode 9 で導入されましたがUseModernBuildSystem、これの「公式」フラグになると思われます。)

于 2018-07-06T07:33:00.537 に答える
47

ビルド システムをLegacy Build SystemfromにNew Build System、またはその逆に変更します。

Xcode を開く --> ファイルを選択 --> ワークスペース設定を選択

ここに画像の説明を入力

ビルド システムを新しいビルド システムからレガシー ビルド システムに変更 --> [完了] をクリックします。

ここに画像の説明を入力

于 2019-02-16T05:30:58.577 に答える