Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
欲善其事,必先利其器!
就在不久之前,Java領(lǐng)域的開發(fā)神器IntelliJ IDEA終于迎來2021年的一個重要的大版本更新:IntelliJ IDEA 2021.1。
現(xiàn)如今大量的Java開發(fā)者深度依賴著這款開發(fā)軟件,正如網(wǎng)上的段子所言:“可以毫不夸張地說,多少Java程序員離開了IDEA就不會寫代碼了(狗頭)”,由此可見其使用的廣泛程度。
新版本一出來,我也迫不及待地想嘗試一番。當然,主力開發(fā)機我是不敢亂升級的,所以這兩天,我在一臺平時用來做測試的老開發(fā)本子上更新了全新的IDEA。
軟件啟動界面打開的那一瞬間,我就知道事情并不簡單。
更新后,全新的啟動頁面更加花里胡哨了。
軟件啟動速度也是非常之快,就我這多年苦練的火箭般手速,都差點沒截來下面這張啟動頁面圖。
JetBrains提供的Space這個功能不知道大家有沒有聽說過,講白了就是一套集成的團隊協(xié)作環(huán)境,可以提供包括構(gòu)建交付、聊天協(xié)作、團隊管理以及項目管理等在內(nèi)的一整套協(xié)作一體化解決方案。
最新的IDEA 2021.1把Space環(huán)境給無縫地集成進來了,現(xiàn)在屬于開箱即用的狀態(tài),軟件的右上角就有快捷入口:
這個功能相信對于很多依賴Windows系統(tǒng)以及WSL功能的用戶來說,簡直是喜大普奔!
以前WSL就算再好用,但是你的IDE并沒有和它打通,多少總是一個遺憾。
這下好了,二者直接打通了,IDEA支持WSL 2。你可以直接在新版IDEA 2021.1中運行并開發(fā)WSL 2中的Java項目,包括Gradle類型項目和Maven類型等項目均支持。
Run Targets這個功能的意思有點類似于上面剛聊過的WSL 2。它允許開發(fā)者直接在遠程主機甚至在Docker容器上運行和調(diào)試項目。
所以到目前為止,新版IDEA 2021允許開發(fā)者可以在本地、WSL 2、SSH遠程主機、Docker等目標上運行項目,可以說賊香了!
這也算是一個比較重磅的更新。
近兩年來,Java版本的發(fā)布速度也是快如老狗,我還在用Java 8,它都淦到Java 16了。
關(guān)于Java 16的新特性,我還準備寫篇文章來詳細聊一聊呢,包括比如:
這次IDEA 2021版的一個很重要的更新就是加入了對Java 16的基本支持,注意是基本支持。
除此之外IDEA還新增了幾項檢查機制,典型比如更加智能的數(shù)據(jù)流分析檢查。
鏈式構(gòu)造方式的優(yōu)化格式設置等等。
目的都是為了幫助提升可讀性,進一步提升用戶體驗。
Code With Me是一項用于協(xié)作開發(fā)與結(jié)對編程的服務,可以實Host-Guest模式的“手摸手”(滑稽)結(jié)對編程和群體編程。
目前,新版IDEA開箱即用地支持了Code With Me功能,同時它還具有音頻通話和視頻通話功能,可以滿足隨時隨地的溝通需求,這操作簡直騷到爆。
版本控制
版本控制這一塊目前做了不少的更新,包括可以更快地完成PR的創(chuàng)建提交,支持PR模板。
變更提交至代碼庫前的自定義代碼檢查配置。
以及支持自定義Git提交模板等等。
以前在IDEA中預覽網(wǎng)頁得跳到外部瀏覽器,而現(xiàn)如今IDE的編輯器內(nèi)部就支持Built-in級別的網(wǎng)頁預覽,只需要在右上角點那個IDEA小圖標即可激活,而且可以編輯網(wǎng)頁源碼時做到同步更新和預覽。
在Windows平臺的新版IDEA上,可直接在任務欄(或開始菜單)上右鍵快捷呼出最近使用的項目。
講白了,就是使搜索范圍更易于自定義,我們可以直接在設置中進行Scope定義,自行選擇External Dependencies的范圍是否包含。
當你對編輯器里的多個文件進行垂直窗口拆分時,雙擊某個Tab就可以將當前文件窗口最大化,再次雙擊Tab則會還原。
當然除了這些之外,新版IDEA還新增了很多更新和增強,比如:對Kotlin、Scala、JavaScript等語言的開發(fā)優(yōu)化、對常見框架與技術(shù)的優(yōu)化和支持、對Kubernetes和Docker的更新支持和改進、數(shù)據(jù)庫工具的更新支持等等,由于時間有限,在此就不一一贅述了,有需要的可以按需細究。
最后,讓我們一起大喊一句:“IDEA,yyds!”
作者:dulk 來源:www.cnblogs.com/deng-cc/p/6416332.html
、項目配置的理解
IDEA 中最重要的各種設置項,就是這個 Project Structre 了,關(guān)乎你的項目運行,缺胳膊少腿都不行。最近公司正好也是用之前自己比較熟悉的IDEA而不是Eclipse,為了更深入理解和使用,就找來各種資料再研究一下,這里整理后來個輸出。
1.1 Project
1.2 Modules
1.2.1 增刪子項目
一個項目中可以有多個子項目,每個子項目相當于一個模塊。一般我們項目只是單獨的一個,IntelliJ IDEA 默認也是單子項目的形式,所以只需要配置一個模塊。
(此處的兩個項目引入僅作示例參考)
1.2.2 子項目配置
每個子項目都對應了Sources、Paths、Dependencies 三大配置選項:
1.2.3 增刪框架(Web部署-1)
每個子項目之下都可以定義它所使用的框架,這里重點說明一下Web部分的設置。
1.3 Libraries
這里可以顯示所添加的jar包,同時也可以添加jar包,并且可以把多個jar放在一個組里面,類似于jar包整理。
這里默認將每個jar包做為了一個單獨的組(未測試,待定)。
1.4 Facets
官方的解釋是:
When you select a framework (a facet) in the element selector pane, the settings for the framework are shown in the right-hand part of the dialog.
(當你在左邊選擇面板點擊某個技術(shù)框架,右邊將會顯示這個框架的一些設置)
說實話,并沒有感覺到有什么作用。
1.5 Artifacts(Web部署-2)
項目的打包部署設置,這個是項目配置里面比較關(guān)鍵的地方,重點說一下。
先理解下它的含義,來看看官方定義的artifacts:
An artifact is an assembly of your project assets that you put together to test, deploy or distribute your software solution or its part. Examples are a collection of compiled Java classes or a Java application packaged in a Java archive, a Web application as a directory structure or a Web application archive, etc.
即編譯后的Java類,Web資源等的整合,用以測試、部署等工作。再白話一點,就是說某個module要如何打包,例如war exploded、war、jar、ear等等這種打包形式。某個module有了 Artifacts 就可以部署到應用服務器中了。
(
jar:Java ARchive,通常用于聚合大量的Java類文件、相關(guān)的元數(shù)據(jù)和資源(文本、圖片等)文件到一個文件,以便分發(fā)Java平臺應用軟件或庫;
war:Web application ARchive,一種JAR文件,其中包含用來分發(fā)的JSP、Java Servlet、Java類、XML文件、標簽庫、靜態(tài)網(wǎng)頁(HTML和相關(guān)文件),以及構(gòu)成Web應用程序的其他資源;
exploded:在這里你可以理解為展開,不壓縮的意思。也就是war、jar等產(chǎn)出物沒壓縮前的目錄結(jié)構(gòu)。建議在開發(fā)的時候使用這種模式,便于修改了文件的效果立刻顯現(xiàn)出來。
)
默認情況下,IDEA的 Modules 和 Artifacts 的 output目錄已經(jīng)設置好了,不需要更改,打成war包的時候會自動在 WEB-INF目錄下生成classes,然后把編譯后的文件放進去。
你可能對這里的輸出目錄不太理解,之前不是配置過了文件編譯的輸出目錄了嗎?為什么這里還有一個整合這些資源的目錄呢?它又做了哪些事呢?
其實,實際上,當你點擊運行tomcat時,默認就開始做以下事情:
在這里還要注意的是,配置完成的artifact,需要在tomcat中進行添加:
前言
該項目為前后端分離項目的前端部分,后端項目mall地址:傳送門。
項目介紹
mall-admin-web是一個電商后臺管理系統(tǒng)的前端項目,基于Vue+Element實現(xiàn)。 主要包括商品管理、訂單管理、會員管理、促銷管理、運營管理、內(nèi)容管理、統(tǒng)計報表、財務管理、權(quán)限管理、設置等功能。
項目演示
項目在線演示地址:http://39.98.190.128/index.html
項目布局
src -- 源碼目錄 ├── api -- axios網(wǎng)絡請求定義 ├── assets -- 靜態(tài)圖片資源文件 ├── components -- 通用組件封裝 ├── icons -- svg矢量圖片文件 ├── router -- vue-router路由配置 ├── store -- vuex的狀態(tài)管理 ├── styles -- 全局css樣式 ├── utils -- 工具類 └── views -- 前端頁面 ├── home -- 首頁 ├── layout -- 通用頁面加載框架 ├── login -- 登錄頁 ├── oms -- 訂單模塊頁面 ├── pms -- 商品模塊頁面 └── sms -- 營銷模塊頁面
搭建步驟
https://github.com/macrozheng/mall-admin-web
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。