2017-01-05 9 views
0

バッチプロセスからXcodeプロジェクトを管理し、特定のグループを部分的に削除する必要があります。プログラムからXcodeプロジェクトからグループを削除するにはどうすればいいですか?

私が理解するように、唯一のツールはxcodeprojです。または、独自のpbxprojファイルパーサを作成する。

私はxcodeprojをインストールしました。

まず最初に、合理的な文書がありません。新しいものであれば、簡単に理解できます。私はいくつかのrbファイルを書く必要があると仮定します。そしてそれを実行してくださいruby xcodeproj_batch.rb

これは私がやったことです。しかし、これは機能しません。このスクリプトは必要なグループを見つけますが、削除しません。

xcodeproj_batch.rb:

require 'rubygems' 
require 'xcodeproj' 


project_path = '../TestProject/TestProject.xcodeproj' 
project = Xcodeproj::Project.open(project_path) 
groupToDelete = Xcodeproj::Project::PBXGroup 

project.groups.each do |group| 
    if group.name == 'Test' 
     groupToDelete = group 

     puts 'cleared: '+group.name 

     groupToDelete.clear 
    end 
end 

project.groups.delete(groupToDelete) 
project.save(project_path) 

私はこのスクリプトにエラーがあると仮定します。私はxcodeprojとルビーの背景がありません。私はここで2つの異なる方法でグループを削除しようとしています。私は何が欠けていますか?私は問題を発見した

答えて

1

、私はremove_from_projectなくclearを使用するために必要な:

require 'rubygems' 
require 'xcodeproj' 


project_path = '../TestProject/TestProject.xcodeproj' 
project = Xcodeproj::Project.open(project_path) 
groupToDelete = nil 

project.groups.each do |group| 
    if group.name == 'Test' 
     groupToDelete = group 

     puts 'cleared: '+group.name 
     # add break; 
    end 
end 

groupToDelete.remove_from_project 
project.save(project_path) 
関連する問題