我通过制作CocoaPods
来构建Touch Framework.
它的名称是Elias
,仅供参考,我从一个简单的教程开始,但是由于一堆棉绒错误,我没有转发我的过程。文件方案如下所示,我很想描述Service.swift.
这是转储类。
class Service{
private init() {
}
public static func doSomething() -> String {
return "***"
}
}
然后我将项目标记为1.0.0
这是.podspec
文件
Pod::Spec.new do |s|
s.name = "Elias"
s.version = "1.0.0"
s.summary = "The little description"
s.description = "Simple description string it is bla bla"
s.homepage = "https://gitlab.com/mycurrentaddress/elias"
s.license = "MIT"
s.author = { "mycurrentaddress" => "mymail@address" }
s.platform = :ios, "12.0"
s.source = { :git => "https://gitlab.com/currentaddress/elias.git", :tag => "1.0.0" }
s.source_files = "Elias/**/*"
end
当我进行pod spec lint
检查时,错误已生成,如下所示。
-> Elias (1.0.0)
- WARN | summary: The summary is not meaningful.
- WARN | description: The description is shorter than the summary.
- WARN | [iOS] license: Unable to find a license file
- WARN | [iOS] swift: The validator used Swift `4.0` by default because no Swift version was specified. To specify a Swift version during validation, add the `swift_versions` attribute in your podspec. Note that usage of a `.swift-version` file is now deprecated.
- ERROR | [iOS] xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
- NOTE | xcodebuild: note: Using new build system
- NOTE | [iOS] xcodebuild: note: Planning build
- NOTE | [iOS] xcodebuild: note: Constructing build description
- NOTE | [iOS] xcodebuild: error: Multiple commands produce 'mypath/Xcode/DerivedData/App-ddfwkgthjshbdqdbsavzaymtdyeo/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist':
- NOTE | [iOS] xcodebuild: warning: Skipping code signing because the target does not have an Info.plist file and one is not being generated automatically. (in target 'App' from project 'App')
- NOTE | [iOS] xcodebuild: warning: duplicate output file 'mypath/Xcode/DerivedData/App-ddfwkgthjshbdqdbsavzaymtdyeo/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist' on task: ProcessInfoPlistFile mypath/Xcode/DerivedData/App-ddfwkgthjshbdqdbsavzaymtdyeo/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist Target Support Files/Elias/Elias-Info.plist (in target 'Elias' from project 'Pods')
当我使用--verbose
时,它会生成此输出。
** CLEAN SUCCEEDED **
note: Using new build system
note: Planning build
note: Constructing build description
Build system information
error: Multiple commands produce 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist':
1) Target 'Elias' (project 'Pods') has copy command from '/var/folders/x6/0rn_y5_d1fj3dp4zc99csdb00000gq/T/CocoaPods-Lint-20191024-93856-9tjcsz-Elias/Pods/Elias/Elias/Info.plist' to 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist'
2) Target 'Elias' (project 'Pods') has process command with output 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist'
warning: Skipping code signing because the target does not have an Info.plist file and one is not being generated automatically. (in target 'App' from project 'App')
warning: duplicate output file 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist' on task: ProcessInfoPlistFile mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist /var/folders/x6/0rn_y5_d1fj3dp4zc99csdb00000gq/T/CocoaPods-Lint-20191024-93856-9tjcsz-Elias/Pods/Target Support Files/Elias/Elias-Info.plist (in target 'Elias' from project 'Pods')
** BUILD FAILED **
Testing with `xcodebuild`.
-> Elias (1.0.0)
- WARN | summary: The summary is not meaningful.
- WARN | description: The description is shorter than the summary.
- WARN | [iOS] license: Unable to find a license file
- WARN | [iOS] swift: The validator used Swift `4.0` by default because no Swift version was specified. To specify a Swift version during validation, add the `swift_versions` attribute in your podspec. Note that usage of a `.swift-version` file is now deprecated.
- ERROR | [iOS] xcodebuild: Returned an unsuccessful exit code.
- NOTE | xcodebuild: note: Using new build system
- NOTE | [iOS] xcodebuild: note: Planning build
- NOTE | [iOS] xcodebuild: note: Constructing build description
- NOTE | [iOS] xcodebuild: error: Multiple commands produce 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist':
- NOTE | [iOS] xcodebuild: warning: Skipping code signing because the target does not have an Info.plist file and one is not being generated automatically. (in target 'App' from project 'App')
- NOTE | [iOS] xcodebuild: warning: duplicate output file 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist' on task: ProcessInfoPlistFile mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist Target Support Files/Elias/Elias-Info.plist (in target 'Elias' from project 'Pods')
错误通常从这一行开始。
error: Multiple commands produce 'mypath/Xcode/DerivedData/App-hdkgocdtxpbmjvejebpnjgvfydfi/Build/Products/Release-iphonesimulator/Elias/Elias.framework/Info.plist'
关于这种情况有解决的主意吗?
谢谢。
编辑:(有用的链接)
The solutions in here not worked for me
编辑:
[![Ignoring unf_ext-0.0.7.5 because its extensions are not built. Try: gem pristine unf_ext --version 0.0.7.5
-> BlinkingLabel (0.1.0)
- ERROR | \[iOS\] file patterns: The `source_files` pattern did not match any file.
- NOTE | xcodebuild: note: Using new build system
- NOTE | \[iOS\] xcodebuild: note: Planning build
- NOTE | \[iOS\] xcodebuild: note: Constructing build description
- NOTE | \[iOS\] xcodebuild: warning: Skipping code signing because the target does not have an Info.plist file and one is not being generated automatically. (in target 'App' from project 'App')
\[!\] BlinkingLabel did not pass validation, due to 1 error.
You can use the `--no-clean` option to inspect any issue.][5]][5]
由于-ERROR | [iOS] file patterns: The
source_files pattern did not match any file.
源文件道具就是
s.source_files = 'BlinkingLabel/Classes/**/*'
有建议吗?
答案 0 :(得分:1)
您不应该创建Xcode项目然后运行pod lib create MyLibrary
。
具体引用您的第一个link,它表示:
模板将为您的库生成一个Xcode项目
该命令将为您完成所有操作。它将在一个工作空间中为您创建两个项目!从同一链接引用:
Pod -在这里放置图书馆的课程
示例-这是生成的演示和测试包
然后您将从/Example
目录打开项目并运行它。
由于这是出于学习目的,我建议您从头开始