自動化された継続的な統合の実践
5220 ワード
自動化された継続的な統合の実践
パッケージコマンド
#clean
rm -rf /Users/ /Library/Developer/Xcode/DerivedData/*
rm -rf ./build/*
#clean
xcodebuild -quiet clean -workspace HybridStandard.xcworkspace -scheme HybridStandard-$envIOS -sdk iphoneos -configuration Release
# xcarchive
xcodebuild archive -quiet -workspace HybridStandard.xcworkspace -scheme HybridStandard-$envIOS -archivePath ./build/HybridStandard.xcarchive -sdk iphoneos -configuration Release
# ipa
xcodebuild -quiet -exportArchive -allowProvisioningUpdates -archivePath ./build/HybridStandard.xcarchive -exportPath ./build/HybridStandard -exportOptionsPlist HybridStandard/HybridStandard-$envIOS-Info.plist
参照先:https://blog.csdn.net/qq_32152027/article/details/60769001
exportOptions.plistファイルのオプション構成パラメータは次のとおりです.compileBitcode : Bool
For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES.
embedOnDemandResourcesAssetPacksInBundle : Bool
For non-App Store exports, if the app uses On Demand Resources and this is YES, asset
packs are embedded in the app bundle so that the app can be tested without a server to
host asset packs. Defaults to YES unless onDemandResourcesAssetPacksBaseURL is specified.
iCloudContainerEnvironment
For non-App Store exports, if the app is using CloudKit, this configures the
"com.apple.developer.icloud-container-environment" entitlement. Available options:
Development and Production. Defaults to Development.
manifest : Dictionary
For non-App Store exports, users can download your app over the web by opening your
distribution manifest file in a web browser. To generate a distribution manifest, the
value of this key should be a dictionary with three sub-keys: appURL, displayImageURL,
fullSizeImageURL. The additional sub-key assetPackManifestURL is required when using on demand resources.
method : String
Describes how Xcode should export the archive. Available options: app-store, ad-hoc,
package, enterprise, development, and developer-id. The list of options varies based on
the type of archive. Defaults to development.
onDemandResourcesAssetPacksBaseURL : String
For non-App Store exports, if the app uses On Demand Resources and
embedOnDemandResourcesAssetPacksInBundle isn't YES, this should be a base URL specifying
where asset packs are going to be hosted. This configures the app to download asset
packs from the specified URL.
teamID : String
The Developer Portal team to use for this export. Defaults to the team used to build the archive.
thinning : String
For non-App Store exports, should Xcode thin the package for one or more device
variants? Available options: (Xcode produces a non-thinned universal app),
(Xcode produces a universal app and all available thinned
variants), or a model identifier for a specific device (e.g. "iPhone7,1"). Defaults to .
uploadBitcode : Bool
For App Store exports, should the package include bitcode? Defaults to YES.
uploadSymbols : Bool
For App Store exports, should the package include symbols? Defaults to YES.
問題の要約
1、xcodebuildコンパイルでファイルの問題が見つからない/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/BlocksKit/BlocksKit/MessageUI/MFMailComposeViewController+BlocksKit.m:6:9: fatal error: 'A2DynamicDelegate.h' file not found
#import "A2DynamicDelegate.h"
^~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m:26:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h:28:9: fatal error: 'AFHTTPSessionManager.h' file not found
#import "AFHTTPSessionManager.h"
^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/Cordova/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.m:20:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/Cordova/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.h:20:9: fatal error: 'CDVPlugin.h' file not found
#import "CDVPlugin.h"
^~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/IQKeyboardManager/IQKeyBoardManager/IQKeyboardReturnKeyHandler.m:24:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/IQKeyboardManager/IQKeyBoardManager/IQKeyboardReturnKeyHandler.h:24:9: fatal error: 'IQKeyboardManagerConstants.h' file not found
#import "IQKeyboardManagerConstants.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
** BUILD FAILED **
解決方法:1、 →Build Settings→Search Paths→Header Search Paths( Search Paths Header Search Paths, All)
2、 Header Search Paths Debug Release "$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include"
2.パッケージ化された署名情報の表示コマンド$codesign -vv -d build/HybridStandard/PayLoad/HybridStandard-Dev.app
#clean
rm -rf /Users/ /Library/Developer/Xcode/DerivedData/*
rm -rf ./build/*
#clean
xcodebuild -quiet clean -workspace HybridStandard.xcworkspace -scheme HybridStandard-$envIOS -sdk iphoneos -configuration Release
# xcarchive
xcodebuild archive -quiet -workspace HybridStandard.xcworkspace -scheme HybridStandard-$envIOS -archivePath ./build/HybridStandard.xcarchive -sdk iphoneos -configuration Release
# ipa
xcodebuild -quiet -exportArchive -allowProvisioningUpdates -archivePath ./build/HybridStandard.xcarchive -exportPath ./build/HybridStandard -exportOptionsPlist HybridStandard/HybridStandard-$envIOS-Info.plist
compileBitcode : Bool
For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES.
embedOnDemandResourcesAssetPacksInBundle : Bool
For non-App Store exports, if the app uses On Demand Resources and this is YES, asset
packs are embedded in the app bundle so that the app can be tested without a server to
host asset packs. Defaults to YES unless onDemandResourcesAssetPacksBaseURL is specified.
iCloudContainerEnvironment
For non-App Store exports, if the app is using CloudKit, this configures the
"com.apple.developer.icloud-container-environment" entitlement. Available options:
Development and Production. Defaults to Development.
manifest : Dictionary
For non-App Store exports, users can download your app over the web by opening your
distribution manifest file in a web browser. To generate a distribution manifest, the
value of this key should be a dictionary with three sub-keys: appURL, displayImageURL,
fullSizeImageURL. The additional sub-key assetPackManifestURL is required when using on demand resources.
method : String
Describes how Xcode should export the archive. Available options: app-store, ad-hoc,
package, enterprise, development, and developer-id. The list of options varies based on
the type of archive. Defaults to development.
onDemandResourcesAssetPacksBaseURL : String
For non-App Store exports, if the app uses On Demand Resources and
embedOnDemandResourcesAssetPacksInBundle isn't YES, this should be a base URL specifying
where asset packs are going to be hosted. This configures the app to download asset
packs from the specified URL.
teamID : String
The Developer Portal team to use for this export. Defaults to the team used to build the archive.
thinning : String
For non-App Store exports, should Xcode thin the package for one or more device
variants? Available options: (Xcode produces a non-thinned universal app),
(Xcode produces a universal app and all available thinned
variants), or a model identifier for a specific device (e.g. "iPhone7,1"). Defaults to .
uploadBitcode : Bool
For App Store exports, should the package include bitcode? Defaults to YES.
uploadSymbols : Bool
For App Store exports, should the package include symbols? Defaults to YES.
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/BlocksKit/BlocksKit/MessageUI/MFMailComposeViewController+BlocksKit.m:6:9: fatal error: 'A2DynamicDelegate.h' file not found
#import "A2DynamicDelegate.h"
^~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m:26:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h:28:9: fatal error: 'AFHTTPSessionManager.h' file not found
#import "AFHTTPSessionManager.h"
^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/Cordova/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.m:20:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/Cordova/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.h:20:9: fatal error: 'CDVPlugin.h' file not found
#import "CDVPlugin.h"
^~~~~~~~~~~~~
1 error generated.
In file included from /Users/jenkins/workspaces/ios/ios.micro-finance/Pods/IQKeyboardManager/IQKeyBoardManager/IQKeyboardReturnKeyHandler.m:24:
/Users/jenkins/workspaces/ios/ios.micro-finance/Pods/IQKeyboardManager/IQKeyBoardManager/IQKeyboardReturnKeyHandler.h:24:9: fatal error: 'IQKeyboardManagerConstants.h' file not found
#import "IQKeyboardManagerConstants.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
** BUILD FAILED **
1、 →Build Settings→Search Paths→Header Search Paths( Search Paths Header Search Paths, All)
2、 Header Search Paths Debug Release "$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include"
$codesign -vv -d build/HybridStandard/PayLoad/HybridStandard-Dev.app