试图让 SQLite 与 grails 一起工作......我在网上找到的东西似乎有点过时 - 对 ivy 和插件等的引用,但基于这些:
http://stackoverflow.com/questions/1199512/grails-sqlite
http://bigohno.blogspot.com/2010/01/groovy-on-grails-sqlite.html
http://maven-repository.com/artifact/org.xerial/sqlite-jdbc/3.6.17
我已经能够让它在测试环境中工作......奇怪的是,当我“prod war”我的 grails 应用程序并部署到 tomcat 时它失败了:
找不到方言类:hibernate.SQLiteDialect
这是我的设置:
在 conf/hibernate 中为 SQLiteDialect 添加了一个类。此 .java 取自此处 http://code.google.com/p/hibernate-sqlite/
然后在我的 DataSource.groovy 中我有:
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = false
cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
}
// environment specific settings
environments {
development {
dataSource {
// SQLite
// !!!see also BuildConfig for Dependancies!!!
dbCreate="update"
url='jdbc:sqlite:C:\\sqlite-shell-win32-x86-3080100\\rss_1.db'
logSql="true"
dialect="hibernate.SQLiteDialect"
driverClassName="org.sqlite.JDBC"
readOnly="true"
}
}
production {
dataSource {
// SQLite
dbCreate="update"
url="jdbc:sqlite:/opt/sqlite/dbs/rss/1/rss_1.db"
logSql="true"
dialect="hibernate.SQLiteDialect"
driverClassName="org.sqlite.JDBC"
readOnly="true"
showsql="false"
}
}
}
在 BuildConfig.groovy 中我有:
dependencies {
runtime 'org.xerial:sqlite-jdbc:3.6.17'
}
我还启动了 .java 方言类并放入了 lib - 一些帖子说这有帮助。我还将 sqlite-jdbc-3.7.15-M1.jar 放在了 lib 中。
现在,当我在我的开发环境中运行应用程序时,它运行良好...但是当我部署到 tomcat 时,出现方言错误。
我需要对方言的生产环境做些什么特别的事情吗?
最佳答案
以下是使用 Grails 设置 SQLite 的方法:
从 http://www.sqlite.org/download.html 下载 SQLite ,解压并保存到一个目录。您可能还想为您的数据库创建目录。
从 https://bitbucket.org/xerial/sqlite-jdbc 下载 SQLite JDBC jar并将 jar 放在您的 grails lib 目录中。
下载 SQLIte 方言...google 搜索,因为有很多,但您可以引用 https://github.com/gwenn/sqlite-dialect或 https://gist.github.com/virasak/54436
在 grails 中,在 src/java 中创建一个类并将您的方言代码放入。
我也将这个类打包并放入 lib 中。
设置您的 grails 数据源,例如:
dataSource {
// SQLite
dbCreate="update"
url="jdbc:sqlite:/opt/sqlite/dbs/rss/1/rss_1.db"
logSql="true"
dialect="SQLiteDialect"
driverClassName="org.sqlite.JDBC"
}
注意:根据您的 sqlite 方言类是否在包中,您可能需要将包名称作为上述方言的前缀(我的没有)。
在 BuildConfig.groovy 中,添加对 sqlite jdbc 的依赖,如下所示:
dependencies {
runtime 'org.xerial:sqlite-jdbc:3.6.17'
}
这对我有用!
关于sqlite - Grails 和 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19691940/
出于某种原因,heroku尝试要求dm-sqlite-adapter,即使它应该在这里使用Postgres。请注意,这发生在我打开任何URL时-而不是在gitpush本身期间。我构建了一个默认的Facebook应用程序。gem文件:source:gemcuttergem"foreman"gem"sinatra"gem"mogli"gem"json"gem"httparty"gem"thin"gem"data_mapper"gem"heroku"group:productiondogem"pg"gem"dm-postgres-adapter"endgroup:development,:t
我是Sinatra的新手,我正在尝试使用SQLite3和Datamapper创建一个数据库。我安装了gem和适配器,然后尝试在文件中执行此代码:#configrequire'sinatra'require'sinatra/contrib'ifdevelopment?require'data_mapper'DataMapper::setup(:default,"sqlite3://#{Dir.pwd}/recall.db")DataMapper.finalize.auto_upgrade!当我执行文件时,命令行给了我这个错误:C:/Ruby193/lib/ruby/site_ruby/1
我正在试用rvm,并用它安装了ruby1.9.2和rails3。我需要重新安装sqlite3-rubygem(因为rvm为不同版本的ruby将所有gem分开)。问题是,当我尝试时,我得到:geminstallsqlite3-ruby/home/jenny/.rvm/rubies/ruby-1.9.2-p0/bin/gem:4:warning:Insecureworldwritabledir/home/jenny/.rvm/gems/ruby-1.9.2-p0/bininPATH,mode040777Buildingnativeextensions.Thiscouldtakeaw
我正在关注RubyonRailsTutorial并且在测试部分变得有些困惑,特别是-3.6.2-AutomatedtestswithGuard按照部署到Heroku的教程说明,我已切换到Postgresql并从我的gemfile中删除了sqlite3,并进行了捆绑安装以进行更新。但是,一旦我运行bundleexecguard我收到消息:/Users/username/.rvm/gems/ruby-1.9.3-p125@global/gems/bundler-1.1.3/lib/bundler/rubygems_integration.rb:147:inblockinreplace_ge
我在crunchbanglinux上安装sqlite3-rubygem时遇到问题。在谷歌搜索过去几个小时并关注了几个遇到同样问题的人之后,我仍然没有让它工作。这是我在尝试“sudogeminstallsqlite3-ruby”后看到的构建native扩展。这可能需要一段时间...错误:安装sqlite3-ruby时出错:错误:无法构建gemnative扩展。/usr/bin/ruby1.8extconf.rb检查sqlite3.h...是的在-lsqlite3中检查sqlite3_libversion_number()...是检查rb_proc_arity()...否检查sqlite3
最近我一直在尝试使用Groovy和Grails,我不得不说这个框架所提供的简单性和生产力给我留下了深刻的印象。在过去,我也曾通过RubyonRails和其他方式向世界问好,有同样的感觉,所以很明显,当涉及到网络应用程序时,DRYKISS绝对是必经之路。问题是,在我目前工作的地方,人们对Microsoft很感兴趣,我猜他们会不太愿意接受这些珠宝,所以我想知道是否有任何.NET项目实现了与Grails和Rails相同的原则?您的意见将不胜感激。非常感谢! 最佳答案 敏锐的架构:http://code.google.com/p/sharp
我的公司正在开始走Grails之路。这样做的原因是当前的开发人员非常依赖Java,但他们认为future的一些Web开发项目需要MVC风格的语言。就个人而言,我来自设计/可用性领域,但随着我承担更多的“前端”职责,我开始觉得有必要更深入地学习一门语言,这样我就可以编写一些逻辑代码,尤其是前端我的UI和东西的代码。我一直在尝试亲自接触Python/Django,但从来没有在上面投入太多时间。现在我的公司正在“跳入”Grails,我购买了“使用Rails进行敏捷Web开发(第3版-测试版)”并且我开始进入RoR。我仍然想在未来或副业学习Python,但我最大的问题是:我是否应该学习RoR,
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。Grails与Rails。哪个有更好的支持?哪个是开发中型应用程序的更好选择?最重要的是哪一个有更多的插件?
我用Grails构建了一个社交网络,但遇到了困难给用户内部他们的editprofile页面有机会将youtube-Url粘贴到文本字段中,然后通过单击按钮,JS将id从粘贴的URL中正则表达式,将触发一个ajax帖子,用youtube视频的预览图像更新divhtml看起来像:JS看起来像:$('.daten_videouploadbtn').click(function(){varstring=document.editProfileForm.videoinput.value;varneu=string.replace(/http[s]?:\/\/(?:[^\.]+\.)*(?:you
最近我将conf/ApplicationResources.groovy(使用资源插件)文件添加到我的项目结构中。在这里,我保留了javascript和css库的模块定义。之前,我使用经典的g:javascript标签导入库。现在每次javascript代码更改时(当服务器正在运行时)我都会收到客户端js错误提示"UncaughtSyntaxError:Unexpectedendofinput".因此,对于每个javascript更改应用程序都需要重新部署,这是我不想要的。我还声明了.js文件要从资源插件模式中排除,但问题仍然存在。任何建议/帮助将不胜感激。SérgioMichels的