2016-09-29 3 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의 한 레벨 아래에 중첩되어 있는지 확인해야합니다. 이것은 하나의 패키지가 여러 대상을 선언 할 때 사용되는 규칙이며 소스에 중첩을 사용하려는 경우 필요합니다. 참조의 source layouts 섹션을 참조하십시오.

이 레이아웃을 사용하는 경우 최신 Swift 패키지 관리자 (swift.org 통해 사용 가능)를 사용하면 생성 된 Xcode 프로젝트에 내가 원하는 것으로 생각되는 그룹 구조가 적용됩니다.

이것은 지금 당황 스럽지만 우리는 상황을 개선하는 최선의 방법을 평가 중입니다.

+0

와 함께 작동하지 않을 것입니다 Xcode에서'swift package generate-xcodeproj'를 실행 한 후, 당신이 진술 한 것을 얻습니다. 그러나 그들은 그룹으로 분류되지 않습니다. 파일들은 모두 같은 레벨이지만,'Specify/Bird.swift' 등의 이름을 지정합니다. –

+0

이것은 SwiftPM에서 비교적 최근에 수정 된 것입니다. http://swift.org에서 가장 최근의 툴체인 중 한 명을 잡아야합니다. –