美文网首页错误收集
一个关于xCode11(报找不到 PRODUCT_NAME-Sw

一个关于xCode11(报找不到 PRODUCT_NAME-Sw

作者: Nulll | 来源:发表于2019-10-08 13:37 被阅读0次

    问题描述:

    最近用swift混编oc开发,在oc里面引用swift 的代码,报找不到(PRODUCT_NAME-Swift.h)这个文件。。于是乎找了一些办法,总算是解决了这个问题。。

    其实之前在做的时候,没有出现这种问题。都是xCode11之才出现的。出现的原因是,现在需要修改应用的名字。比如以前叫“testDemo”现在叫“swiftDemo”,这样一下子就不行了。找不到文件。。。

    以前修改应用名

    不知各位大佬在做开发的时候一般是怎么给你的应用起名字的。。我一直直接修改下面这个地方就好了。。


    修改应用程序名字

    然而在xCode11 以前可以,在xCode11 也可以,或者说是纯objc开发的可以,纯swift开发的也可以。但是最近的项目里面却不可以了。

    出现问题的原因。是由于我的项目里面使用了swift和objc的混合编译。

    下面是一个swift混编objc的项目,里面直接设置没有问题,运行也没有问题。 swift项目的基本信息
    objc文件访问swift文件的头文件

    到这里一切都变得平静。运行,ok,没问题。。

    这里下来看看编译的文件

    看看objc的程序


    oc编译的文件

    再来看看混编的


    swift混编oc的文件

    修改应用程序名称了。

    然后这时候,突然说要修改应用程序名字了。。那好吧直接修改就是了

    看下面: 修改应用程序名字
    运行的结果

    是不是有点爽呀,有没有太爽。。
    于是就找解决办法嘛。。既然找不到文件路径,那就去看看里面到底是个啥玩意。。

    于是乎在这里找到了
    
    /Users/sobeycloud/Library/Developer/Xcode/DerivedData/ASwiftDemo-baakaxhjmtnjakeohifhaocqkheb/Build/Intermediates.noindex/ASwiftDemo.build/Debug-iphoneos/ASwiftDemo.build
    
    这里面就是编译的文件。。。
    
    

    现在来看看里面的编译文件吧。


    修改后的编译文件

    既然这样,那我们修改一下饮用的地方就好了么

    修改桥接文件的引用。哈哈哈

    修改引用文件后

    果然,这样一修改,一下子就可以了。。
    但是这样是不是很麻烦,要是有多个文件都在引用,那是不是要每个文件都需要修改呀,那这个工作太大了。。。。显然不适合懒惰的码农们。

    最后的解决办法。。

    修改info 里面的display name,其他应用的地方不用修改,二期编译文件名也没有改变,但是General 下面地方又改变了,表示没看懂什么原因。。


    修改dispaly name

    就这样,应用程序的名字就修改完成了。。

    最后发现,,这个应该是xCode的bug ~~~反正我看同事的xCode没有这样的问题~~~难受

    相关文章

      网友评论

        本文标题:一个关于xCode11(报找不到 PRODUCT_NAME-Sw

        本文链接:https://www.haomeiwen.com/subject/egavpctx.html