views:

131

answers:

1

Hey guys I'm using the latest version of XCode (3.2.2) and I've linked the framework using the tutorial. I was building my app and tested it and I get a BWToolkit exception on decoding.

I've included the Framework in the frameworks and added it to the copy files stage.

I even created a new dummy app including the framework and adding it to the copy files stage and it still crashes when I try to run.

Any ideas? Do I need to include it somewhere in the app? I'm worried I've overlooked something really simple.

2010-04-13 14:14:24.540 BWTestFramework[7504:a0f] An uncaught exception was raised
2010-04-13 14:14:24.543 BWTestFramework[7504:a0f] *** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class (BWSplitView)
2010-04-13 14:14:24.545 BWTestFramework[7504:a0f] *** Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException', reason: '*** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class (BWSplitView)'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x00007fff84a77d24 __exceptionPreprocess + 180
    1   libobjc.A.dylib                     0x00007fff82ba00f3 objc_exception_throw + 45
    2   CoreFoundation                      0x00007fff84a77b47 +[NSException raise:format:arguments:] + 103
    3   CoreFoundation                      0x00007fff84a77ad4 +[NSException raise:format:] + 148
    4   Foundation                          0x00007fff83804aa6 _decodeObjectBinary + 2427
    5   Foundation                          0x00007fff83805825 -[NSKeyedUnarchiver _decodeArrayOfObjectsForKey:] + 1229
    6   Foundation                          0x00007fff83805d65 -[NSArray(NSArray) initWithCoder:] + 462
    7   Foundation                          0x00007fff83804b1f _decodeObjectBinary + 2548
    8   Foundation                          0x00007fff83803f99 _decodeObject + 208
    9   AppKit                              0x00007fff8069fbfb -[NSView initWithCoder:] + 362
    10  Foundation                          0x00007fff83804b1f _decodeObjectBinary + 2548
    11  Foundation                          0x00007fff83803f99 _decodeObject + 208
    12  AppKit                              0x00007fff806adfbb -[NSWindowTemplate initWithCoder:] + 3824
    13  Foundation                          0x00007fff83804b1f _decodeObjectBinary + 2548
    14  Foundation                          0x00007fff83805825 -[NSKeyedUnarchiver _decodeArrayOfObjectsForKey:] + 1229
    15  Foundation                          0x00007fff83805268 -[NSSet(NSSet) initWithCoder:] + 447
    16  Foundation                          0x00007fff83804b1f _decodeObjectBinary + 2548
    17  Foundation                          0x00007fff83803f99 _decodeObject + 208
    18  AppKit                              0x00007fff8062fcde -[NSIBObjectData initWithCoder:] + 1983
    19  Foundation                          0x00007fff83804b1f _decodeObjectBinary + 2548
    20  Foundation                          0x00007fff83803f99 _decodeObject + 208
    21  AppKit                              0x00007fff8062f40d loadNib + 146
    22  AppKit                              0x00007fff8062e96d +[NSBundle(NSNibLoading) _loadNibFile:nameTable:withZone:ownerBundle:] + 248
    23  AppKit                              0x00007fff8062e7a5 +[NSBundle(NSNibLoading) loadNibNamed:owner:] + 326
    24  AppKit                              0x00007fff8062bd27 NSApplicationMain + 279
    25  BWTestFramework                     0x0000000100001891 main + 33
    26  BWTestFramework                     0x0000000100001868 start + 52
)
terminate called after throwing an instance of 'NSException'

That's the crash report

+1  A: 

Okay I figured out the solution, or at least got it to a point where it works under the latest Xcode, I copy the framework on target and I also link the project against the framework and it loads.

So I add it to both: "Copy Files" and "Link Binary with Library"

Schroedinger
Yep, that's what you need to do.
Rob Keniger