2017-03-21 3 views
0

ich diesen Fehler sehe, wenn ich versuche, ein Archiv zu exportieren:xcodebuild exportArchive nicht definierte Methode für downcase nil: NilClass

2017-03-08 16:33:01.413 xcodebuild[61048:2742229] [MT] IDEDistribution: Step failed: <IDEDistributionThinningStep: 0x7fe3d72312f0>: Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.} 
error: exportArchive: No applicable devices found. 

Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.} 

ich keine App Ausdünnung tun:

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>compileBitcode</key> 
    <false/> 
    <key>method</key> 
    <string>enterprise</string> 
    <key>teamID</key> 
    <string>MYTEAMID</string> 
    <key>thinning</key> 
    <string>&lt;none&gt;</string> 
    <key>uploadBitcode</key> 
    <false/> 
</dict> 
</plist> 

Als ich Blick in das Verzeichnis hier erwähnt:

2017-03-21 08:47:20.275 xcodebuild[24493:1421657] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/36/28z3md3x08xcljbsh6tvv4xrcr93wf/T/UniversalFree_2017-03-21_08-47-20.274.xcdistributionlogs'. 

ich sehe diesen Fehler in der IDEDistribution.standard.log

2017-03-21 15:47:25 +0000 Scanning IPA... 
2017-03-21 15:47:48 +0000 /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:2341:in `platformIdentifierForVersionMinLoadCommand': undefined method `downcase' for nil:NilClass (NoMethodError) 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1236:in `block in GetMachOImagesFromOToolInfoForFile' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1196:in `each' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1196:in `GetMachOImagesFromOToolInfoForFile' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1294:in `MakeFileSystemNode' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1322:in `block in MakeFileSystemNode' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1321:in `each' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1321:in `MakeFileSystemNode' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1322:in `block in MakeFileSystemNode' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1321:in `each' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1321:in `MakeFileSystemNode' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1085:in `initialize' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1871:in `new' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:1871:in `ProcessIPA' 
     from /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool:2428:in `<main>' 
2017-03-21 15:47:49 +0000 [MT] /Applications/Xcode-7.app/Contents/Developer/usr/bin/ipatool exited with 1 

Der Export schlägt fehl. Wie gehe ich damit um?

Antwort

0

Beantworten Sie meine eigene Frage, da ich online keine direkte Antwort finden konnte. Während es mir nicht ganz klar ist, was das verursacht, da der Stack-Trace anzeigt, dass das Problem innerhalb der ipatool in der GetMachOImagesFromOToolInfoForFile auftritt. Es scheint eine Erwartung zu geben, dass die loadCommands für jedes Element, das es verarbeitet, einen Schlüssel der Form LC_VERSION_MIN_(.+) haben wird, aber dies scheint nicht der Fall für alle Elemente zu sein (wenn jemand feststellen kann, warum und diese Antwort zu aktualisieren, sehr geschätzt). In jedem Fall können Sie die folgenden Änderungen an ipatool vornehmen, um dieses Problem zu beheben (neue Datei ist die linke Datei).

TL/DR: Bearbeitungen für /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool

Für Xcode 7 ...

608,610d607 
<  if (self.machoFile == nil) 
<  return "<MachOImage nil #{self.arch}>" 
<  end 
1239,1242d1235 
<  if (versionMinLoadCommandName == nil) 
<  next 
<  end 
1302c1295 
<  if (machoImages && machoImages.length > 0) 
--- 
>  if machoImages 

Und für Xcode 8 ...

750,752d749 
<  if (self.machoFile == nil) 
<  return "<MachOImage nil #{self.arch}>" 
<  end 

1438,1440d1434 
<  if (versionMinLoadCommandName == nil) 
<  next 
<  end 
1510c1504 
<  if (machoImages && machoImages.length > 0) 
--- 
>  if machoImages 
Verwandte Themen