2017-03-23 30 views
0

我正在嘗試將SQLite集成到Vapor項目中。我在Package.swift文件添加包Sqlite Provider爲:無法將SQLite集成到Vapor項目中

.Package(url: "https://github.com/vapor/sqlite-provider.git", majorVersion: 1, minor: 1) 

,並創建了一個sqlite.json文件,config目錄下,包含

{ 
    "path": "database_name.sqlite" 
} 

在那之後,我跑vapor clean && vapor xcode到sqlite的融入項目。一切運行良好,但目前該項目顯示了兩個斯威夫特編譯器錯誤

頁眉 '/usr/local/opt/sqlite/include/sqlite3.h' 未找到

無法建立的Objective-C模塊 'CSQliteMac'

你能幫助解決THI問題?

+1

似乎SQLite沒有正確安裝,可能重新安裝或更新它? – paper1111

回答

1

以下是你可能想要做什麼:

1:首先檢查/usr/local/opt/sqlite文件夾和文件夾內的子文件夾includes存在。

2:如果/usr/local/opt/sqlite文件夾不存在,則可能需要安裝SQLite。最簡單的方法是通過Homebrew - 如果安裝了它。剛剛從終端中運行以下命令:

brew install sqlite 

3:如果你沒有自制,那麼你就必須決定是否要安裝自制,或者如果您想嘗試手動安裝SQLite的來源。

希望這有助於:)

+0

我的Mac有'Homebrew',也預裝了SQLite。所以,沒有再安裝。你認爲我應該卸載並重新安裝嗎? – x4h1d

+1

我建議你首先檢查你的錯誤信息中提到的包含文件是否存在。如果它存在,我會懷疑有其他錯誤。但是,如果它不在指定的路徑上,那麼請嘗試卸載並重新安裝。 – Fahim

0

由於@Fahim,該sqlite3.h是不是在

/usr/local/opt/sqlite/include/sqlite3.h

正確的位置,在我的情況下, /usr/local/Cellar/sqlite/3.17.0/include/sqlite3.h

只需在終端中運行以下命令:

brew install sqlite 

如果您以前安裝過,它會安裝或更新。在年底完成,你會看到摘要類似:

==>摘要
/usr/local/Cellar/sqlite/3.17.0:11個文件,2.9MB

這是給sqlite的位置/usr/local/Cellar/sqlite/3.17.0

現在點擊第一個錯誤信息,它會帶您到module.modulemap文件。替換位置並構建。它會成功建立。

1

這很明顯是mysql安裝問題,請按照以下步驟運行mysql vapor app。

  1. 首先卸載安裝的mysql。
  2. here安裝泡製或運行下面的命令的下面命令

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 
    
  3. 運行以安裝的MySQL以下命令

    brew install mysql 
    
  4. 運行用於鏈接以下命令

    brew link mysql 
    
  5. 潤啓動mysql服務器

    mysql.sever start 
    
  6. 爲root用戶下面的命令運行

    mysql -uroot 
    
  7. 然後運行以下命令來設置root用戶密碼

    SET PASSWORD = PASSWORD(‘admin’); 
    
  8. 創建數據庫之前運行項目,使用以下命令

    create database your_database_name_goes_here; 
    
  9. 然後運行您的項目,毫無疑問,此後您的項目將運行。

注1: - 不要忘了在你的項目中描述here添加mysql.json。

注2: - 另外不要忘記添加提供程序和使用模型類準備數據庫表如下。

try drop.addProvider(VaporMySQL.Provider.self) 
drop.preparations = [ModelClass.self] 

我已經創建了一個Github here演示項目,你可以試試。

+0

很好。但是你忘了一些東西,我沒有用'mysql',而是'SQLite'。不管怎樣,謝謝。 – x4h1d

相關問題