本篇文章解決的是透過IDEA開發工具來匯入存在的 SpringBoot maven專案。
如果你還沒有IDEA或者還沒有啟用,請參見下面解決:
https://segmentfault.com/a/1190000045019749
首先一個SpringBoot專案結構如下圖:
注意,一定要有src和pom.xml檔案,src為原始碼存放路徑,pom.xml為maven專案 lib的依賴管理檔案。
下面就來詳細講解如何匯入專案。
一. 配置Maven的settings檔案
在磁碟上新建一個 mvn_res 目錄, 放到哪裡都行,只要沒有中文就行。我這裡就放到了F:\hadluo\mvn_res目錄下。
然後進入mvn_res目錄, 在新建 res 目錄, 用來存放maven下載的jar包。
然後回退到 mvn_res目錄 , 新建 settings.xml 檔案,用記事本開啟編輯:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- 預設的值是${user.home}/.m2/repository -->
<localRepository>F:\hadluo\mvn_res\res</localRepository>
<!-- 如果Maven要試圖與使用者互動來得到輸入就設定為true,否則就設定為false,預設為true。 -->
<interactiveMode>true</interactiveMode>
<!-- 如果Maven使用${user.home}/.m2/plugin-registry.xml來管理plugin的版本,就設定為true,預設為false。 -->
<usePluginRegistry>false</usePluginRegistry>
<!-- 如果構建系統要在離線模式下工作,設定為true,預設為false。 如果構建伺服器因為網路故障或者安全問題不能與遠端倉庫相連,那麼這個設定是非常有用的。 -->
<offline>false</offline>
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
<!-- settings.xml中的profile是pom.xml中的profile的簡潔形式。 它包含了啟用(activation),倉庫(repositories),外掛倉庫(pluginRepositories)和屬性(properties)元素。
profile元素僅包含這四個元素是因為他們涉及到整個的構建系統,而不是個別的POM配置。 如果settings中的profile被啟用,那麼它的值將過載POM或者profiles.xml中的任何相等ID的profiles。 -->
<profiles>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<repositories>
<repository>
<id>spring-milestone</id>
<name>Spring Milestone Repository</name>
<url>http://repo.spring.io/milestone</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<layout>default</layout>
</repository>
<repository>
<id>spring-snapshot</id>
<name>Spring Snapshot Repository</name>
<url>http://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
<layout>default</layout>
</repository>
</repositories>
</profile>
</profiles>
<!-- activations是profile的關鍵,就像POM中的profiles,profile的能力在於它在特定情況下可以修改一些值。
而這些情況是透過activation來指定的。 -->
<!-- <activeProfiles/> -->
</settings>
注意修改localRepository節點的值為你 之前在上面新建的res目錄,我這裡就是F:\hadluo\mvn_res\res
<localRepository>F:\hadluo\mvn_res\res</localRepository>
二. IDEA匯入專案
開啟IDEA , 找到Settings...
搜尋maven, 選擇到maven後,在右邊的User settings file 模組中,點選Override,然後選擇到上面建立的settings.xml檔案的位置。然後點選ok確認修改設定。
然後點選File,Open
然後選擇開啟專案,找到pom.xml 檔案,選到這個pom.xml,然後點選確認
匯入後,等待一會兒,如果有類報錯,點選到類檔案,上面提示了JDK is missing ,就點選右邊的Configure.. , 然後增加JDK , 選到你安裝的JDK路徑。
然後等待編譯完成就可以了。