Ich habe zwei Ziele app
und appTests
. Auch ich habe Klasse Wine
und Framework Realm
und 'RealmSwift', die mit diesen beiden Zielen verknüpft sind. Es gibt keine Ausnahme, wenn ich Klasse Wine
in traget app
verwende.Klasse wird mehr als einmal in Ziel verknüpft
Aber wenn ich will
appTests.swift (22 Zeilen) -Test wie
import UIKit
import XCTest
import RealmSwift
class appTests: XCTestCase {
func testRealmAdd() {
NSFileManager.defaultManager().removeItemAtPath(Realm.defaultPath, error: nil)
let realm = Realm()
let wine = Wine() // when error occure
wine.photo = "photo"
wine.desc = "description"
wine.raiting = 3.0
realm.write {() -> Void in
realm.add(wine)
}
let result = realm.objects(Wine)
print("\(result)")
XCTAssertTrue(result.count == 1, "There should be one element")
}
}
Wine.swift (10 Zeilen) ein
import UIKit
import RealmSwift
class Wine: Object {
dynamic var desc: String = ""
dynamic var photo: String = ""
dynamic var raiting: Double = 0
}
Dann laufen Ausnahme erscheint bei Zeile 8 in appTests.swift
RLMObject-Unterklassen mit demselben Namen können nicht zweimal in dasselbe Ziel eingeschlossen werden. Bitte stellen Sie sicher, dass "Wein" nur einmal mit Ihrem aktuellen Ziel verknüpft ist.
Ich habe bereits DerivedData und Projekt gelöscht. Können Sie mir vorschlagen, wo ich hinschauen sollte?
EDIT nach nhgrif Kommentar
Ok scheint es, dass eine Ausnahme früher steigt, in Zeile 7, die nun in Code dank nhgrif gekennzeichnet ist.
Welche Linie ist Linie 8? Dies hat wahrscheinlich nichts mit dem Quellcode zu tun, sondern damit, wie Sie die Frameworks mit den Projekten verknüpfen. – nhgrif
@nhgrif Ich füge diese Frameworks wie Tutorial, sagte https://realm.io/docs/swift/latest/#getting-started, und dann markierte ich 'Realm.framework',' RealmSwift.framework' und 'Wine.swift' Wie für das Ziel "appTests" in ** Target-Mitgliedschaft ** –