目标不止一次地连接在一起
我有两个目标app
和appTests
。 另外我还有和这两个目标挂钩的Wine
和框架Realm
和RealmSwift。 有没有例外当我在类app
使用类Wine
。
但是,当我想运行testing
appTests.swift (22行)
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行)
import UIKit import RealmSwift class Wine: Object { dynamic var desc: String = "" dynamic var photo: String = "" dynamic var raiting: Double = 0 }
然后在appTests.swift
第8行出现exception
具有相同名称的RLMObject子类不能在同一个目标中包含两次。 请确保“Wine”仅与您当前的目标链接一次。
我已经做了DerivedData和项目。 你能build议我应该看的地方?
nhgrif评论后编辑
好吧,似乎在第7行中有一个例外情况正在上升。现在用nhgrif标记代码。
Wine.swift
应该只在app
,而不是appTests
。 在包含两个名为Wine
( app.Wine
和appTests.Wine
)的类的appTests
中包含它,这不是Realm支持的。 只要Wine
是public
(或者在Swift 2.0中, @Testable
),你可以从appTests
访问它,而不用将它包含在appTests
目标中,因为appTests
在app
链接。