2015-05-04 95 views
0

我有一個我已經構建的私人cocoapod。它是用Obj-C編寫的。我的庫中有一些舊的API,我想標記爲已棄用,主要是爲了提醒我的團隊他們應該開始使用一些更新的API。Swift將使用已棄用的函數標記爲錯誤

所以我有一個程序,我在ObjC庫,看起來像這樣:

-(void) myOldRoutine DEPRECATED_MSG_ATTRIBUTE("Use myNewRoutine instead"); 

在我的客戶端應用程序,我都ObjC和斯威夫特文件。如果我在我的「.m」文件中調用「myOldRoutine」,我只是得到一個編譯器警告。

但是,如果我在Swift中進行完全相同的調用,則會出現錯誤。該錯誤消息與警告消息相同,除了它是錯誤,並暫停編譯。

在此先感謝您的幫助。

+3

這很奇怪。所以你不浪費時間,我建議你停止使用已棄用的方法並升級你的項目。 – Andy

+0

哈哈。那麼,他們就是我自己棄用的例程,只是讓我自己的應用程序最終遷移到新的例程。我只是想將它標記爲符號,所以我可以通過一種簡單的方法查看我使用的是舊版API。 –

+0

您的項目或目標設置中是否設置了「作爲錯誤處理警告」複選框? –

回答

-2

只需將您棄用的例程替換爲: -(void) myOldRoutine DEPRECATED_MSG_ATTRIBUTE("Use myNewRoutine instead"); 與「#warning - 您的評論」。

相關問題