摘要:為了使用最新的,升級(jí)到配置修改根據(jù)官網(wǎng)的升級(jí)指南,修改文件,更改插件版本號(hào)文件中,把和多帶帶加入。此文件為首頁(yè)的模板。推測(cè)可能是版本和版本的首頁(yè)模板不同,于是到官網(wǎng)下載版本的,找到并覆蓋項(xiàng)目的相應(yīng)文件。添加插件的語(yǔ)句至此,升級(jí)成功完成。
為了使用最新的Play WS Api,升級(jí)到play 2.6.21
1.配置修改
根據(jù)官網(wǎng)的升級(jí)指南,修改plugins.sbt文件,更改插件版本號(hào):addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.21")
build.sbt文件中,把guice和play-json多帶帶加入。
libraryDependencies += guice libraryDependencies += "com.typesafe.play" %% "play-json" % "2.6.0"
build.sbt中修改依賴庫(kù)cache和JavaWs的名字為ehcache和ws。修改后如下
libraryDependencies ++= Seq( javaJdbc , ehcache , ws)
然后點(diǎn)擊菜單View/Tool windwos/SBT打開sbt窗口,點(diǎn)擊刷新,然后下載新的依賴包,雖然消耗不少時(shí)間,最終順利完成,沒(méi)有遇到太大麻煩。
2.運(yùn)行
修改完配置之后,運(yùn)行play(使用 sbt run命令)。提示 viewsindex.scala.html:18: not found: value welcome。此文件為首頁(yè)的Twirl模板。
推測(cè)可能是2.6版本和2.5版本的首頁(yè)模板不同,于是到官網(wǎng)下載2.6版本的starter-example,找到views/index.scala.html并覆蓋項(xiàng)目的相應(yīng)文件。再次運(yùn)行,還是提示同樣錯(cuò)誤。
這個(gè)錯(cuò)誤的原因是views.html包下沒(méi)有welcome對(duì)象,views.html.play20包下也沒(méi)有,據(jù)說(shuō)是因?yàn)榈桶姹镜膒lay下載了某個(gè)低版本依賴包,導(dǎo)致高版本play不再下載新版本的依賴包導(dǎo)致。此問(wèn)題無(wú)法解決,因?yàn)檫@個(gè)歡迎頁(yè)面可有可無(wú),因此最終決定從views/index.scala.html中刪除@welcome的調(diào)用。編譯通過(guò),開發(fā)模式下運(yùn)行沒(méi)有問(wèn)題。
3.生產(chǎn)環(huán)境部署
和上一版本一樣,命令行上 運(yùn)行sbt dist或者sbt universal:packageBin打包項(xiàng)目為zip文件。復(fù)制到服務(wù)器上,解壓zip文件,運(yùn)行/bin/xxxx.bat啟動(dòng)web服務(wù)器,出現(xiàn)“輸入行太長(zhǎng)”的錯(cuò)誤無(wú)法啟動(dòng)web服務(wù)器。
直接原因是java -cp "..." 命令太長(zhǎng),超過(guò)windows命令行8000字節(jié)的限制,導(dǎo)致windows無(wú)法執(zhí)行此命令。這個(gè)命令長(zhǎng)的部分是 -cp后面指定的jar包文件,因?yàn)橐蕾嚨膉ar包太多,sbt把jar文件名全部串接起來(lái)放在cp后面,導(dǎo)致這個(gè)參數(shù)非常長(zhǎng)。上一版本還勉強(qiáng)沒(méi)超過(guò)限制,升級(jí)到新版本后,依賴包又增加了很多個(gè),導(dǎo)致命令長(zhǎng)度超限制。
“輸入行太長(zhǎng)”錯(cuò)誤的一般解決方法是,把bat文件所在路徑的基礎(chǔ)路徑名盡可能縮短,把bat的上兩級(jí)目錄的文件夾名縮短到2個(gè)字符,再運(yùn)行bat文件,這時(shí)不再報(bào)“輸入行太長(zhǎng)”錯(cuò)誤,但出現(xiàn)新錯(cuò)誤“無(wú)法找到或者加載主類play.core.server.ProdServerStart”的錯(cuò)誤。
一開始懷疑是javac選項(xiàng)或者jdk版本導(dǎo)致的,用了很長(zhǎng)時(shí)間排查仍然無(wú)法解決問(wèn)題,在stackoverflow上找到的方法也不成功。偶然想到,這個(gè)錯(cuò)誤是不是也是因?yàn)槊铋L(zhǎng)度太長(zhǎng)導(dǎo)致的,于是在stackoverflow上找到一個(gè)徹底解決命令太長(zhǎng)的方法。在build.sbt文件中添加插件LauncherJarPlugin,本來(lái)不抱太大希望,想不到運(yùn)行sbt start竟然成功了,然后打包部署也成功了。添加插件LauncherJarPlugin的語(yǔ)句:
lazy val `xxxx` = (project in file(".")).enablePlugins(PlayJava,LauncherJarPlugin)
至此,play framework2.6.21升級(jí)成功完成。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/73787.html
摘要:博客搬家原地址原發(fā)表時(shí)間本文討論使用安裝包構(gòu)建網(wǎng)站底層服務(wù)后,包括域名解析,的管理等的一系列填坑歷程。域名解析問(wèn)題相關(guān)首先將本人的網(wǎng)站信息公布如下域名地址主機(jī)提供方搬瓦工域名托管及解析阿里云萬(wàn)網(wǎng)本文之后的內(nèi)容均是基于以上信息。 「博客搬家」 原地址: CSDN 原發(fā)表時(shí)間: 2016-11-16 本文討論使用 LNMP 安裝包構(gòu)建網(wǎng)站底層服務(wù)后,包括域名解析,MySQL 的管理等...
摘要:目前正在寫一個(gè)微信公眾號(hào)的小項(xiàng)目,記錄一下遇到的問(wèn)題和解決方法主要是前端。前端提交時(shí)使用,在后端再取出對(duì)應(yīng)的微信支付看了下文檔,以前是需要用喚起支付,而現(xiàn)在則是把微信內(nèi)置到了微信的瀏覽器中。 目前正在寫一個(gè)微信公眾號(hào)的小項(xiàng)目,記錄一下遇到的問(wèn)題和解決方法(主要是前端)。內(nèi)容持續(xù)更新中~ 主要實(shí)現(xiàn) 前后端分離前端為 SPA 單頁(yè)面使用微信的JSSDK微信支付 技術(shù)方案 后端使用 php ...
摘要:目前正在寫一個(gè)微信公眾號(hào)的小項(xiàng)目,記錄一下遇到的問(wèn)題和解決方法主要是前端。前端提交時(shí)使用,在后端再取出對(duì)應(yīng)的微信支付看了下文檔,以前是需要用喚起支付,而現(xiàn)在則是把微信內(nèi)置到了微信的瀏覽器中。 目前正在寫一個(gè)微信公眾號(hào)的小項(xiàng)目,記錄一下遇到的問(wèn)題和解決方法(主要是前端)。內(nèi)容持續(xù)更新中~ 主要實(shí)現(xiàn) 前后端分離前端為 SPA 單頁(yè)面使用微信的JSSDK微信支付 技術(shù)方案 后端使用 php ...
摘要:原文見我的博客,點(diǎn)擊進(jìn)入使用開發(fā)微信公眾號(hào)下站點(diǎn)的填坑之旅本文為我創(chuàng)業(yè)過(guò)程中,開發(fā)項(xiàng)目的填坑之旅。作為一個(gè)技術(shù)宅男,我的項(xiàng)目是做一個(gè)微信公眾號(hào),前后端全部自己搞定,不浪費(fèi)國(guó)家一分錢。 原文見我的博客,點(diǎn)擊進(jìn)入使用vue開發(fā)微信公眾號(hào)下SPA站點(diǎn)的填坑之旅 本文為我創(chuàng)業(yè)過(guò)程中,開發(fā)項(xiàng)目的填坑之旅。作為一個(gè)技術(shù)宅男,我的項(xiàng)目是做一個(gè)微信公眾號(hào),前后端全部自己搞定,不浪費(fèi)國(guó)家一分錢^_^。 ...
閱讀 1149·2021-09-22 15:26
閱讀 2727·2021-09-09 11:52
閱讀 2055·2021-09-02 09:52
閱讀 2315·2021-08-12 13:28
閱讀 1248·2019-08-30 15:53
閱讀 581·2019-08-29 13:47
閱讀 3469·2019-08-29 11:00
閱讀 3171·2019-08-29 10:58