天天看點

intellij idea -- 工程移植要做作曲家,不做演奏家~

前言:

        做課設在intellij idea導入時遇到了一點問題,現在記錄一下解決過程:

環境:

        是一個 web項目,實作網上書店。可以注冊,訂書,查詢使用者的訂單等等。分管理者和使用者;管理者可以增删書籍,使用者可以分類檢視書籍,進行書籍的購買。

嘗試:

直接open項目,結果應該是web項目,卻在intellij idea 的project目錄下沒有出現web檔案夾,但是後端測試檔案是可以運作的。

第一次嘗試:在想是不是導入的方式有問題,應該先建立web項目,然後再進行導入。結果并沒有解決問題,檢視了main.iml檔案,發現web項目檔案與源項目檔案的差別是:

intellij idea -- 工程移植要做作曲家,不做演奏家~

web項目檔案 type類型為web,而此檔案 type為Spring

第二次嘗試:上網查閱了很多資料,找到了解決方案:https://www.jianshu.com/p/39b2206999e7

并不是 mian.iml 檔案的問題,而是facets配置的問題:

intellij idea -- 工程移植要做作曲家,不做演奏家~

在web resource directory下生成新的web檔案夾,将原來的web檔案夾下的所有内容進行拷貝,解決問題,可以運作。

課設的時候一直嘗試,但是一直沒有成功。

請教了我的偶像,我老哥!順便他給我講解了一些關于工程移植的知識,現在做下記錄:

1. IDE所做的基本都是梳理項目檔案,是以有三種編譯檔案:

maven >  gradle > ant , ant現在基本已經不用了

當出現導入項目時,直接導入項目為空時,此時應該先建立一個項目,然後進行拷貝,再根據編譯檔案類型進行 梳理。

gradle檔案内容大緻如下所示:

intellij idea -- 工程移植要做作曲家,不做演奏家~

repository 是 引用的外部庫

sourceSets 指明源代碼目錄

dependencies 是編譯時所用的檔案

2. 此操作可以讓 gradle自動對導入的項目進行梳理

intellij idea -- 工程移植要做作曲家,不做演奏家~
intellij idea -- 工程移植要做作曲家,不做演奏家~

3. gradle建立web項目:

intellij idea -- 工程移植要做作曲家,不做演奏家~

GroupId:工作組

ArtifactId:項目類别

Version:版本号

intellij idea -- 工程移植要做作曲家,不做演奏家~

GroupId以及ArtifactId主要會在尋找包時起作用,如圖:

intellij idea -- 工程移植要做作曲家,不做演奏家~

4. 要指定函數入口

有的工程項目很大,編譯器尋找入口會很困難,要在gradle裡面進行指定:

intellij idea -- 工程移植要做作曲家,不做演奏家~
intellij idea -- 工程移植要做作曲家,不做演奏家~

感想:

IDE是開發的輔助工具,利用好也能事半功倍。但是主要還是軟體架構的設計鴨!就像老哥說的,有些大牛不用IDE,直接記事本或者vim寫代碼。IDE千差萬别,重要的還是軟體的設計架構!

要做作曲家,不做演奏家~