2016-09-29 5 views
4

迅速なパッケージマネージャーから生成する際に、Xcodeでグループ構造化階層を維持することは可能ですか?私は実行するたび:グループ構造を維持しながらスウィフトパッケージマネージャーがXcodeプロジェクトを生成

swift package generate-xcodeproj 

は私が私が持っていた構造(罰金の作品フォルダではない)任意のグループを失います。 Xcodeでプログラミングしているときに、コードには見えない視覚的組織(つまり、フォルダとは対照的にグループ)をある程度持ちたいと思っています。

+1

ファイルに同じファイルシステム構造を使用していない理由はありますか? –

+0

はい、例えば、粗い例を挙げると、Bird、Fish、Humanのすべてのクラスは、Livingの別ファイルに参照クラスとして含まれています。あなたはそれらを整理するかもしれません: ファイル:リビング、 グループ:種 - >ファイル:鳥 - >ファイル:魚 - >ファイル:人間の種がフォルダだった場合、私は場合は、 が、これはSPM –

答えて

2

私が何をしたいことは、以下のように(フォローアップコメントに基づいて)あなたのソースを整理することであると信じている。ここで重要なビットを使用して、サブディレクトリを使用する場合ということであることを

Foo/Package.swift Foo/Sources/Foo/Living.swift Foo/Sources/Foo/Specifies/Bird.swift Foo/Sources/Foo/Specifies/Fish.swift Foo/Sources/Foo/Specifies/Human.swift

注意、コードがすべてSourcesの1つ下のレベルにネストされていることを確認する必要があります。これは、1つのパッケージが複数のターゲットを宣言するときに使用される規則であり、ソースにネストを使用する場合に必要です。参照のsource layoutsセクションを参照してください。

このレイアウトを使用する場合は、最新のSwiftパッケージマネージャー(swift.orgから入手可能)を使用して、生成されたXcodeプロジェクトは、あなたが望むと信じるグループ構造になります。

これはわかりにくいことですが、改善のための最善の方法を評価しています。

+0

では動作しないでしょうこれを行うと、 'swift package generate-xcodeproj'の後にXcodeであなたの状態を取得しますが、それらはグループに分類されません。これらのファイルはすべて同じレベルですが、 'Specify/Bird.swift'などの名前が付いています。 –

+0

これは比較的最近SwiftPMで修正されたものです。 http://swift.orgから最新のツールチェーンを入手する必要があります –

関連する問題