我正在尝试将SQLite集成到Vapor项目中。我在ready:
TextWindow.WriteLine("Do you want to bet? yes(1) or no(2).")
answer = TextWindow.ReadNumber()
If answer = 1 Then
Goto start
Else
Goto ready
EndIf
start:
TextWindow.WriteLine("Ok lets go.")
points = 100
var1 = Math.GetRandomNumber(10)
If 5 < var1 < 9 Then
points = points + 100
ElseIf 9 < var1 < 10 then
points = points + 200
Elseif 1 < var1 < 5 then
points = points - 100
EndIf
TextWindow.WriteLine("You rolled " + var1 + ". You now have " + points + " points.")
文件中添加了Sqlite Provider
的包:
Package.swift
并在config目录下创建了一个.Package(url: "https://github.com/vapor/sqlite-provider.git", majorVersion: 1, minor: 1)
文件,其中包含
sqlite.json
之后,我运行{
"path": "database_name.sqlite"
}
将sqlite集成到项目中。一切正常,除了现在项目显示两个 Swift编译器错误:
找不到标题'/usr/local/opt/sqlite/include/sqlite3.h'
和
无法构建Objective-C模块'CSQliteMac'
您能帮忙解决这个问题吗?
答案 0 :(得分:1)
以下是您可能想要做的事情:
1:首先检查该文件夹中的/usr/local/opt/sqlite
文件夹和includes
子文件夹是否存在。
2:如果/usr/local/opt/sqlite
文件夹不存在,则可能需要安装SQLite。最简单的方法是通过Homebrew - 如果你安装了它。只需从终端运行以下命令:
brew install sqlite
3:如果您没有自制软件,那么您必须决定是否要安装Homebrew,或者是否要尝试手动安装SQLite源。
希望这有助于:)
答案 1 :(得分:1)
这显然是mysql的安装问题,按照以下步骤运行mysql steam app。
从here安装brew或在命令
下运行return
运行以下命令安装mysql
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
运行以下命令进行链接
brew install mysql
运行以下命令启动mysql服务器
brew link mysql
为root用户运行以下命令
mysql.sever start
然后运行以下命令来设置ROOT用户密码
mysql -uroot
使用以下命令
在运行项目之前创建数据库SET PASSWORD = PASSWORD(‘admin’);
然后运行你的项目,毫无疑问,你的项目将在此之后运行。
注1: - 不要忘记在项目中添加mysql.json,如here所述。
注2: - 也不要忘记使用模型类添加提供者和准备数据库表,如下所示。
create database your_database_name_goes_here;
我已在Github here创建了一个演示项目,您可以尝试。
答案 2 :(得分:0)
感谢 @Fahim ,sqlite3.h
并非
/usr/local/opt/sqlite/include/sqlite3.h
在我的情况下,正确的位置是
/usr/local/Cellar/sqlite/3.17.0/include/sqlite3.h
只需在终端中运行以下命令:
brew install sqlite
如果您以前安装过,它将安装或更新。完成后,您会看到 摘要 之类的内容:
==&GT;摘要
/usr/local/Cellar/sqlite/3.17.0:11个文件,2.9MB
提供sqlite
位置/usr/local/Cellar/sqlite/3.17.0
。
现在点击第一条错误消息,它会转到module.modulemap
文件。替换位置和构建。它将成功构建。