モジュールへの相互参照でセグメンテーションフォルトを解決しようとしています。この仕事をする方法を知らない。以下のエラー部分:セグメンテーションフォールト:11 - モジュールへのクロスリファレンス
1. While reading from /Users/damiandudycz/Library/Developer/Xcode/DerivedData/Hypno-azmcjycezcoqnfauqcbgimvipjyj/Build/Intermediates/Hypno.build/Debug-iphonesimulator/Hypno.build/Objects-normal/x86_64/WorldObjectBasedAugmentedRealityObject~partial.swiftmodule
2. While deserializing 'WorldObjectBasedAugmentedRealityObject' (ClassDecl #12)
3. While deserializing decl #31 (XREF)
4. Cross-reference to module 'AugmentedReality'
... AugmentedRealityView
... in an extension in module 'AugmentedReality'
... Object
5. While loading members for 'AugmentedRealityView' at <invalid loc>
6. While deserializing 'init' (ConstructorDecl #5)
7. While deserializing decl #33 (XREF)
8. Cross-reference to module 'UIKit'
... UIView
... init
... with type (UIView.Type) -> (CGRect) -> UIView
他のモジュールのサブクラスであるクラスをサブクラス化するときに問題が発生します。他のモジュールのこのクラスはUIViewから継承しています。 "空の"プロジェクトバージョンを用意しました - ほとんどのファイルと定義を削除しました。空のクラスとモジュールのみが残っています。誰かが私にこれを手伝ってもらえますか? GoogleARObjectクラスの問題を示します。このクラスが削除またはコメント化されるとコンパイルされます。空のクラスと
プロジェクト: https://dl.dropboxusercontent.com/u/40968624/Hypno.zip
オープンについてはわかりませんでした。ありがとうございました。 (投票された) –
そして、それはうまくいった、ありがとう:)。これは常にネストされたクラスをエクステンションの中に組み込むのは悪い設計ですか?それらがモジュールの内部でしか見えないのなら、これは大丈夫ですか? –
実際には、モジュール内の拡張モジュールの中にこのようなオープンクラスを持つ場所がたくさんあり、それらを別のモジュールで継承しています。しかし、この問題だけが原因です。何故ですか?例えば、私はpublic final class WebServiceを持っています:OperationQueueとその拡張モジュールの拡張WebService {open class RequestOperation:Operation {}} 同じ状況ですが、うまく動作し、別のモジュールで継承できます。 –