ios - 规范未通过验证,CocoaPod Generation Lint Error
问题描述
我正在CocoaPods
制作一个Touch Framework.
它的名字Elias
只是为了尝试,我从一个简单的教程开始,但由于一堆 lint 错误,我没有转发我的过程。文件方案如下所示,我很想描述里面的内容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'
有什么想法可以解决这种情况吗?
提前致谢。
编辑:(有用的链接)
编辑:
[![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]
我通过 pod lib lint 收到错误,因为 - ERROR | [iOS] file patterns: The
source_filespattern did not match any file.
源文件道具就是
s.source_files = 'BlinkingLabel/Classes/**/*'
有什么建议吗?
解决方案
你不应该创建一个 Xcode 项目然后运行 pod lib create MyLibrary
.
具体参考您的第一个链接,它说:
该模板将为您的库生成一个 Xcode 项目
该命令将为您完成所有工作。它将为您在一个工作区中创建两个项目!从同一链接引用:
Pod - 这是您放置图书馆课程的地方
示例- 这是生成的演示和测试包
然后,您将从/Example
目录中打开项目并运行它。
由于这是出于学习目的,我建议您重新开始
推荐阅读
- sql-server - 重新编译查询计划
- angular - 在 ngx-chips 中单击选项卡上的下拉列表项
- android - CandleDataSet 未在 Android 6.0.1 设备上绘制
- c# - 如何根据键值设置选中列表框中的项目?
- c# - 当有多个调用调用该方法时,一种锁定等待调用的方法?
- arrays - 通过比较数组 React JS 的元素来唯一的数组
- npm - 代码 EISGIT ... node_modules/sitemap:似乎是一个 git repo 或子模块
- php - 来自 env 的值没有回显
- xml - XSL 转换:如何打印表中的所有值
- powerbi - 如何在 Power BI 中从具有条件的同一列中查找 DateDiff