SWIFT_VERSION的值不能为空

zphenhs4  于 2023-04-19  发布在  Swift
关注(0)|答案(9)|浏览(197)

我已经为obj c项目安装了swift pod。当我试图构建它时,我得到了这个错误。

我已经检查了所有的解决方案,比如删除派生数据,清理构建文件夹。Swift Compiler_Language也在XCode 10中缺失。添加了用户定义的设置,即使它不起作用。

nnsrf1az

nnsrf1az1#

选择你的应用目标,然后后藤构建设置,搜索swift,从下拉列表中设置swift语言版本。

vxqlmq5t

vxqlmq5t2#

如果有其他人阅读过这个线程谁也有同样的问题,但无法解决它使用上述答案,这可能会有所帮助:
如果你有一个数据模型,你需要检查当你点击数据模型,点击一个实体,并打开文件检查器时,“代码生成”语言是否正确设置。在我的例子中,我的整个应用程序是用Objective-C编写的,但由于某种原因,在这里设置为Swift。这是错误将显示在问题导航器中的另一个原因。

更改代码生成语言后,清理build文件夹非常重要,可以通过按Command-Shift-K或单击屏幕顶部菜单中的***Product-〉Clean Build Folder***来完成。

查看此链接,了解在哪里可以找到我所说的**“代码生成”**选项。
Model.xcdatamodeld->File Inspector->Code Generation

6mzjoqzu

6mzjoqzu3#

Xcode 10.2更新
1.进入--〉构建设置
1.在构建设置下选择全部+组合全部+级别
1.最后在搜索栏右侧搜索“Swift语言版本

wfsdck30

wfsdck304#

您需要搜索每个“PRODUCT_NAME =”,其中需要有一个“SWIFT_VERSION =“4.2”;“after everyone.例如也PRODUCT_NAME = "$(TARGET_NAME)";enter code here

inkz8wg9

inkz8wg95#

对于Cordova应用程序,在config.xml中添加以下行

<preference name="SwiftVersion" value="5.3"/>
nfs0ujit

nfs0ujit6#

如果您正在使用Ionic与Cordova,并且由于此错误而到达此处,请执行以下操作:
在config.xml中添加

<platform name="ios">
        <preference name="UseSwiftLanguageVersion" value="5" />

您可能需要删除ios的资源并重新添加它以使其工作。

cordova platform remove ios
cordova platform add ios

干杯!

ltskdhd1

ltskdhd17#

尽管如此,如果您仍然感到困惑,您可以直接在项目文件中添加SWIFT_VERSION:

80B11AAAAAAAAAAAAAAAC3E5D8 /* Debug */ = {
        isa = XCBuildConfiguration;
        baseConfigurationReference = DF5...040;
        buildSettings = {
            ...
            PRODUCT_MODULE_NAME = react-native-some-module;
            ...
            SWIFT_VERSION = "4.2";
        };
        name = Debug;
    };

对Debug和Release目标重复此操作。这让我跳过了这个问题。

jecbmhm3

jecbmhm38#

我使用circle ci在testFlight上运行测试并生成应用程序预览我遇到了这个问题,并能够通过在ios/{your_project_name}.xcodeproj/project.pcxproj下设置SWIFT_VERSION来解决这个问题。
1.在此文件下搜索SWIFT_VERSION并复制它

13B07F941A680F5B00A75B9A /* Debug */ = {
            isa = XCBuildConfiguration;
            baseConfigurationReference = 8F6A6E403A1DCB019B5AB844 /* Pods-heartland_charter_s_34954.debug.xcconfig */;
            buildSettings = {
                ...
                PRODUCT_NAME = heartland_charter_s_34954;
                SWIFT_OPTIMIZATION_LEVEL = "-Onone";
                SWIFT_VERSION = 5.0; // Copy this line
                ...
            };
            name = Debug;
        };

1.搜索PRODUCT_NAME,并将SWIFT_VERSION粘贴到每个PRODUCT_NAME块的正下方,前提是该块不存在

13B07F951A680F5B00A75B9A /* Release */ = {
            isa = XCBuildConfiguration;
            baseConfigurationReference = CF85766339BED655A366B986 /* Pods-heartland_charter_s_34954.release.xcconfig */;
            buildSettings = {
                ...
                PRODUCT_NAME = "$(TARGET_NAME)";
                SWIFT_VERSION = 5.0; // Add it here
                ...
            };
            name = Release;
        };
  1. pod安装并重新运行应用程序
lp0sw83n

lp0sw83n9#

如果你在目标的“构建设置”中搜索swift_version,你会马上找到:)

相关问题