Klasse X ist implementiert in beiden <framework> und <Applikation> einer der beiden wird verwendet, welches nicht definiert ist

Bin ich immer diese Warnung:

Class X is implemented in both <framework> and <application> one of the two will be used, which one is undefined

Diese Warnung ist ziemlich bedeckt, ein bisschen über das web, aber ich habe nicht gefunden was als Antwort auf die spezifische problem, das ich habe.

Szenario

Habe ich gebaut MyFramework und MyApplication (als test/demo-Anwendung für MyFramework).

MyFramework verwendet eine CocoaPod (die ich zu beziehen, wie CoolPod), die ich auch verwenden möchten, in MyApplication (und es ist davon auszugehen Verbraucher MyFramework würde auch).

Ich muss in der Lage sein zu verteilen MyFramework als .Rahmen (für closed-source). Dies bedeutet jedoch, dass MyFramework bettet CoolPod in seiner kompilierte Bibliothek.

Wenn ich jetzt importieren MyFramework und CoolPod in MyApplication bekomme ich diesen Konflikt (die Ausgabe der Warnung oben gezeigt) als CoolPod s-Klassen sind bereits im Preis enthalten MyFramework Bibliothek (als CoolPod eingebettet ist).

Also wir haben diese Struktur:

CoolPod -> MyFramework \
                        MyApplication
               CoolPod /

Frage

Wie kann ich vermeiden, dass dieser Konflikt?

  • Gibt es eine Möglichkeit, meine MyApplication bieten CoolPod zu MyFramework?
  • Muss ich pipe CoolPod die Header durch MyFramework?

Ich nachgedacht habe, einschließlich CoolPod die Header (nicht aber die lib) in MyApplication", aber es scheint zu Komplex für das, was sollte ein einfacher Fall.

Jede Hilfe wird sehr geschätzt, das ist wirklich blockiert mich jetzt.

Dank,

Indigo

  • Ich habe ein ähnliches Problem, hast du eine Lösung finden?
  • Ähnliches Problem, aber mit unit-tests, wird hier diskutiert: stackoverflow.com/questions/6149673/...
  • Verwunderlich ist das nicht eine wirklich gemeinsame Muster? Nicht-Entwickler erstellen zu können, DAGs der Zusammenstellung Einheiten, ohne sich sorgen, dass es gonna be Kollisionen?!
  • Hi @Zenton. Neben der akzeptierten Antwort, hast du es geschafft, zu lösen dieses Problem mit einer anderen Lösung? Ich stehe vor dem gleichen Problem, ich würde schätzen Ihre Beratung.
InformationsquelleAutor Zenton | 2015-01-01
Schreibe einen Kommentar