TL;DR
- CocoaPodsを使って依存ライブラリをインストールしようとしてできなかったお話。
-
gem update xcodeproj
するか1.6.0.rc.x
を入れれば解決。 - 知ってる人からしたら全然わかってないなお前ってなると思います。
環境
エラー内容のStackを見ておくれ。
CocoaPodsインストール
既に1.5.0が入ってることを知らないでsudo gem install cocoapods
でインストール。
CocoaPods 1.6.0.rc.1 is available.
To update use: `sudo gem install cocoapods --pre`
[!] This is a test version we'd love you to try.
For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.6.0.rc.1
おう、俺もlove youだけどrc版はまた今度な。
この後これがトリガーになってハマることになろうとはこの時s-yoshidaは思いもしn(
pod setup
何事も無く終了。
ぼく「かんたーん^^」
pod install
いっぱいエラー吐いた。オンギャー。
エラー内容
以下、ほぼコピペなので見辛いかもしれません。
Analyzing dependencies
Command
/usr/local/bin/pod install
Report
-
What did you do?
-
What did you expect to happen?
-
What happened instead?
Stack
CocoaPods : 1.5.3
Ruby : ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
RubyGems : 2.5.2.3
Host : Mac OS X 10.14.2 (18C54)
Xcode : 10.1 (10B61)
Git : git version 2.17.2 (Apple Git-113)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 6d65beda1df0fcfcebb010dce7e4fc5bd0a3ccb5
Plugins
cocoapods-deintegrate : 1.0.2
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.0
cocoapods-stats : 1.0.0
cocoapods-trunk : 1.3.0
cocoapods-try : 1.1.0
Podfile
# Uncomment the next line to define a global platform for your project
platform :ios, '11.0'
def shared_pods
use_frameworks!
# Network Framework
pod 'Alamofire', '~> 4.8.1'
pod 'AlamofireImage', '~> 3.5.0'
end
target 'hogehoge_ios' do
shared_pods
end
target 'hogehoge_iosTests' do
shared_pods
end
target 'hogehoge_iosUITests' do
shared_pods
end
post_install do | installer |
require 'fileutils'
#Pods-acknowledgements.plist
FileUtils.cp_r('Pods/Target Support Files/Pods-hogehoge_ios/Pods-hogehoge_ios-acknowledgements.plist', 'hogehoge_ios/SupportingFiles/Settings.bundle/Acknowledgements.plist', :remove_destination => true)
end
Error
RuntimeError - [!] Xcodeproj doesn't know about the following attributes {"inputFileListPaths"=>[], "outputFileListPaths"=>[]} for the 'PBXShellScriptBuildPhase' isa.
If this attribute was generated by Xcode please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:321:in `configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project.rb:262:in `new_from_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:350:in `object_with_uuid'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:300:in `block (2 levels) in configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:299:in `each'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:299:in `block in configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:296:in `each'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:296:in `configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project.rb:262:in `new_from_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:350:in `object_with_uuid'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:300:in `block (2 levels) in configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:299:in `each'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:299:in `block in configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:296:in `each'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project/object.rb:296:in `configure_with_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project.rb:262:in `new_from_plist'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project.rb:203:in `initialize_from_file'
/Library/Ruby/Gems/2.3.0/gems/xcodeproj-1.5.7/lib/xcodeproj/project.rb:103:in `open'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer/analyzer.rb:918:in `block (2 levels) in inspect_targets_to_integrate'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer/analyzer.rb:917:in `each'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer/analyzer.rb:917:in `block in inspect_targets_to_integrate'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer/analyzer.rb:912:in `inspect_targets_to_integrate'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer/analyzer.rb:78:in `analyze'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:243:in `analyze'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:154:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:153:in `resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/installer.rb:116:in `install!'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command/install.rb:41:in `run'
/Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:22:in `load'
/usr/local/bin/pod:22:in `<main>'
[!] Oh no, an error occurred.
Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=%5B%21%5D+Xcodeproj+doesn%27t+know+about+the+following+attributes+%7B%22inputFileListPaths%22%3D%3E%5B%5D%2C+%22outputFileListPaths%22%3D%3E%5B%5D%7D+for+the+%27PBXShellScriptBuildPhase%27+isa.%0AIf+this+attribute+was+generated+by+Xcode+please+file+an+issue%3A+https%3A%2F%2Fgithub.com%2FCocoaPods%2FXcodeproj%2Fissues%2Fnew&type=Issues
If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new
Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md
Don't forget to anonymize any private data!
Looking for related issues on cocoapods/cocoapods...
/Library/Ruby/Gems/2.3.0/gems/gh_inspector-1.1.3/lib/gh_inspector/sidekick.rb:95:in `parse_results': undefined method `map' for nil:NilClass (NoMethodError)
Did you mean? tap
from /Library/Ruby/Gems/2.3.0/gems/gh_inspector-1.1.3/lib/gh_inspector/sidekick.rb:34:in `search'
from /Library/Ruby/Gems/2.3.0/gems/gh_inspector-1.1.3/lib/gh_inspector/inspector.rb:68:in `search_query'
from /Library/Ruby/Gems/2.3.0/gems/gh_inspector-1.1.3/lib/gh_inspector/inspector.rb:62:in `search_exception'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/user_interface/error_report.rb:119:in `search_for_exceptions'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:67:in `report_error'
from /Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:396:in `handle_exception'
from /Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:337:in `rescue in run'
from /Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:324:in `run'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:52:in `run'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/bin/pod:55:in `<top (required)>'
from /usr/local/bin/pod:22:in `load'
from /usr/local/bin/pod:22:in `<main>'
エラーと向き合う
なっがwなっげぇwwww草生えない(真顔
俺は依存してるライブラリを入れたいだけなんじゃぁぁぁあああ(´・ω・`)
RuntimeError - [!] Xcodeproj doesn't know about the following attributes {"inputFileListPaths"=>[], "outputFileListPaths"=>[]} for the 'PBXShellScriptBuildPhase' isa.
If this attribute was generated by Xcode please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new`
ここが怪しい(直感
ってことでググる。「pod
install
RuntimeError
Xcodeproj
doesn't
know
about
the
following
attributes
」でググる。
公式のIssueを確認する
先頭に出てきた公式Issueを要チェックや!(雑なリスペクト
gem update xcodeproj
すると解決すると思うぜ!って
@peruginniさんが言ってる。が、直る理由がわからないので一旦ステイ。
原因を探す
Issueをちゃんと追うと、dnkoutsoさんが「its simple, any Xcode 10 project that has a new script phase that has input file list or output file list shows this warning.」って仰ってる。要するにXcode10でプロジェクトを作るとinputFileListPathsとoutputFileListPathsが空だとそのまま空の配列が出力されてしまって、それが原因だよ(意訳)。とのこと。
原因はわかった。で、どうしたら良いんだ...諸事情によりgem update xcodeproj
の手段は使わないようにしたい。
解決策を探す
ここでCocoaPods 1.6.0.rc.1 is available.
を思い出す。
バージョンを指定しつつ更にググる。
CocoaPods with Xcode 10 RuntimeError Xcodeproj doesn't know about the following attributes
世の中同じことで悩む人はいるんだなぁ...という事で
This is a known bug introduced by Xcode 10 which fixed in CocoaPods 1.6.0. Right now (Jan 2019) it's in beta, so you can install it with
> sudo gem install cocoapods --pre
\ いそのー!1.6使えば解決できるってさー! /
再トライ
インストール済みのCocoaPodsを全てアンイストールして(ここで1.5.0が別で入ってることに気が付く)、sudo gem install cocoapods --pre
で1.6.0.rc.2をインストール。pod setup
pod install
共に問題無く終了。先人達は凄い。
さいごのまとめ
やっぱ公式だよ。