日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

IDEA是否会嫌导jar包麻烦吗???赶快来学习maven吧,冲冲冲

發(fā)布時間:2025/3/21 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IDEA是否会嫌导jar包麻烦吗???赶快来学习maven吧,冲冲冲 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • maven功能
    • 配置maven
      • mvn compile 如下報錯:
      • 解決方案:
      • 十分感謝坤爺幫助
    • 修改本地倉庫
      • maven的配置文件
      • 修改local_repository指定你的目錄(不要使用中文目錄)
    • 倉庫
      • 倉庫的定義
      • 倉庫的分類
      • 倉庫的使用
    • IDEA中設置maven
      • 配置入口
        • maven項(配置當前工程的設置)
        • Maven/Runner
      • maven項(配置以后新建工程的設置)
    • 使用模版創(chuàng)建項目
    • 報錯解決
      • 報錯1
      • 報錯2
    • 刪除導入的jar包和modules

maven功能

  • maven可以管理jar文件
  • 自動下載jar和他的文檔,源代碼
  • 管理jar直接的依賴, a.jar需要b.jar , maven會自動下載b.jar
  • 管理你需要的jar版本
  • 幫你編譯程序,把java編譯為class
  • 幫你測試你的代碼是否正確。
  • 幫你打包文件,形成jar文件,或者war文件
  • 幫你部署項目
  • 配置maven

  • 需要從maven的官網(wǎng)下載maven的安裝包,我的版本是apache-maven-3.6.3
  • 解壓安裝包,解壓到一個目錄,非中文目錄
  • 配置環(huán)境變量;在系統(tǒng)的環(huán)境變量中,指定一個M2_HOME的名稱, 指定它的值是maven工具安裝目錄,bin之前的目錄M2_HOME=D:\apache-maven-3.6.3-bin\apache-maven-3.6.3
  • 再把M2_HOME加入到path之中,在所有路徑之前加入 %M2_HOME%\bin;(注意:需要配置JAVA_HOME ,指定jdk路徑)
  • 驗證,新的命令行中,執(zhí)行mvn -v
  • tree + 文件


    執(zhí)行mvn compile ,結(jié)果是在項目的根目錄下生成target目錄(結(jié)果目錄),maven編譯的java程序,最后的class文件都放在target目錄中

    默認倉庫:

    C:\Users\ASUS\.m2\repository



    注意,執(zhí)行java命令,必須在相應的包名文件路徑之前

    mvn compile 如下報錯:

    解決方案:

    打開pom.xml的文件,在project標簽中加上如下代碼:

    <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>10</maven.compiler.source><maven.compiler.target>10</maven.compiler.target> </properties>

    這里的10需要換成對應jdk版本,直接java -version

    如下這種,把10全部換成1.8即可

    十分感謝坤爺幫助

    修改本地倉庫

    maven的配置文件

    maven安裝目錄/conf/settings.xml,先備份

    修改local_repository指定你的目錄(不要使用中文目錄)

    把注釋內(nèi)標簽移動到下面,修改標簽內(nèi)容即可

    D:\apache-maven-3.6.3-bin\maven_repository

    倉庫

    倉庫的定義

  • 存放maven使用的jar和我們項目使用的jar(maven使用的插件(各種jar);項目使用的jar(第三方工具))
  • 倉庫的分類

  • 本地倉庫:個人計算機上的文件夾,存放各種jar
  • 遠程倉庫:在互聯(lián)網(wǎng)上的,使用網(wǎng)絡才能使用的倉庫(中央倉庫:最權(quán)威的, 所有的開發(fā)人員都共享使用的一個集中的倉庫,https://repo.maven.apache.org;中央倉庫的鏡像:就是中央倉庫的備份, 在各大洲,重要的城市都是鏡像;私服,在公司內(nèi)部,在局域網(wǎng)中使用的, 不是對外使用的。)
  • 倉庫的使用

    maven倉庫的使用不需要人為參與
    開發(fā)人員需要使用mysql驅(qū)動—>maven首先查本地倉庫—>私服—>鏡像—>中央倉庫

    IDEA中設置maven

  • 在idea中設置maven ,讓idea和maven結(jié)合使用( idea中內(nèi)置了maven ,一般不使用內(nèi)置的, 因為用內(nèi)置修改maven的設置不方便。)
  • 配置入口

    maven項(配置當前工程的設置)

  • 配置的入口 ①:配置當前工程的設置,file--settings ---Build, Excution,Deployment--Build Tools --Maven
    改之前:

  • Maven Home directory: maven的安裝目錄
  • User Settings File : 就是maven安裝目錄conf/setting.xml配置文件

  • Local Repository : 本機倉庫的目錄位置
    改之后:

  • Maven/Runner

  • VM Options : archetypeCatalog=internal
  • JRE: 你項目的jdk
  • maven項目創(chuàng)建時,會聯(lián)網(wǎng)下載模版文件, 比較大, VM Options使用-DarchetypeCatalog=internal,不用下載, 創(chuàng)建maven項目速度快。(新版本的idea用-DarchetypeCatalog=internal,版本較低的用archetypeCatalog=internal)

    maven項(配置以后新建工程的設置)

    配置以后新建工程的設置,file--other settings--Settings for New Project

    使用模版創(chuàng)建項目

  • maven-archetype-quickstart : 普通的java項目
  • maven-archetype-webapp : web工程



  • 然后點擊Enable-Auto-Import

    報錯解決

    報錯1


    maven自動導入依賴失敗

    2 errorsat com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:543)at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:159)at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106)at com.google.inject.Guice.createInjector(Guice.java:87)at com.google.inject.Guice.createInjector(Guice.java:69)at com.google.inject.Guice.createInjector(Guice.java:59)at org.codehaus.plexus.DefaultPlexusContainer.addComponent(DefaultPlexusContainer.java:344)at org.codehaus.plexus.DefaultPlexusContainer.addComponent(DefaultPlexusContainer.java:332)at org.jetbrains.idea.maven.server.Maven3ServerEmbedderImpl.customizeComponents(Maven3ServerEmbedderImpl.java:557)at org.jetbrains.idea.maven.server.Maven3ServerEmbedderImpl.customize(Maven3ServerEmbedderImpl.java:527)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:346)at sun.rmi.transport.Transport$1.run(Transport.java:200)at sun.rmi.transport.Transport$1.run(Transport.java:197)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.Transport.serviceCall(Transport.java:196)at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)at java.security.AccessController.doPrivileged(Native Method)at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:276)at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:253)at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:162)at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:227)at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:179)at com.sun.proxy.$Proxy198.customize(Unknown Source)at sun.reflect.GeneratedMethodAccessor1581.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at com.intellij.execution.rmi.RemoteUtil.invokeRemote(RemoteUtil.java:179)at com.intellij.execution.rmi.RemoteUtil.access$300(RemoteUtil.java:39)at com.intellij.execution.rmi.RemoteUtil$2$1$1.compute(RemoteUtil.java:160)at com.intellij.openapi.util.ClassLoaderUtil.runWithClassLoader(ClassLoaderUtil.java:66)at com.intellij.execution.rmi.RemoteUtil.executeWithClassLoader(RemoteUtil.java:231)at com.intellij.execution.rmi.RemoteUtil$2$1.invoke(RemoteUtil.java:157)at com.sun.proxy.$Proxy198.customize(Unknown Source)at org.jetbrains.idea.maven.server.MavenEmbedderWrapper.doCustomize(MavenEmbedderWrapper.java:96)at org.jetbrains.idea.maven.server.MavenEmbedderWrapper.lambda$customizeForResolve$1(MavenEmbedderWrapper.java:69)at org.jetbrains.idea.maven.server.RemoteObjectWrapper.perform(RemoteObjectWrapper.java:76)at org.jetbrains.idea.maven.server.MavenEmbedderWrapper.customizeForResolve(MavenEmbedderWrapper.java:68)at org.jetbrains.idea.maven.project.MavenProjectsTree.resolve(MavenProjectsTree.java:1264)at org.jetbrains.idea.maven.project.MavenProjectsProcessorResolvingTask.perform(MavenProjectsProcessorResolvingTask.java:45)at org.jetbrains.idea.maven.project.MavenProjectsProcessor.doProcessPendingTasks(MavenProjectsProcessor.java:134)at org.jetbrains.idea.maven.project.MavenProjectsProcessor.access$000(MavenProjectsProcessor.java:32)at org.jetbrains.idea.maven.project.MavenProjectsProcessor$2.run(MavenProjectsProcessor.java:109)at org.jetbrains.idea.maven.utils.MavenUtil.lambda$runInBackground$5(MavenUtil.java:451)at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)at java.util.concurrent.FutureTask.run(FutureTask.java:266)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745) 2021-06-10 22:17:13,176 [8188941] ERROR - #org.jetbrains.idea.maven - IntelliJ IDEA 2018.3.2 Build #IU-183.4886.37 2021-06-10 22:17:13,176 [8188941] ERROR - #org.jetbrains.idea.maven - JDK: 1.8.0_152-release; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 2021-06-10 22:17:13,176 [8188941] ERROR - #org.jetbrains.idea.maven - OS: Windows 10 2021-06-10 22:19:58,325 [8354090] INFO - ide.actions.ShowFilePathAction - Exit code 1

    這個報錯是屬于maven版本問題,不兼容,回退到3.6.1重新安裝配置問題解決

    報錯2

    2019-09-24 15:54:53,177 [79997751] ERROR - #org.jetbrains.idea.maven - IntelliJ IDEA 2018.3 Build #IU-183.4284.148 2019-09-24 15:54:53,177 [79997751] ERROR - #org.jetbrains.idea.maven - JDK: 1.8.0_152-release; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 2019-09-24 15:54:53,177 [79997751] ERROR - #org.jetbrains.idea.maven - OS: Windows 10 2019-09-24 15:54:54,060 [79998634] INFO - .diagnostic.PerformanceWatcher - Reindexing refreshed files took 1279ms; general responsiveness: ok; EDT responsiveness: ok 2019-09-24 15:54:54,187 [79998761] INFO - g.FileBasedIndexProjectHandler - Reindexing refreshed files: 0 to update, calculated in 0ms 2019-09-24 15:55:31,582 [80036156] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:02:39,691 [80464265] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:02:44,386 [80468960] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:03:24,203 [80508777] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:03:31,740 [80516314] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:05:31,587 [80636161] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:12:39,637 [81064211] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:12:44,454 [81069028] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:13:24,083 [81108657] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:13:31,845 [81116419] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:15:31,596 [81236170] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:22:39,644 [81664218] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:22:44,358 [81668932] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:23:24,097 [81708671] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:23:31,756 [81716330] ERROR - .httpclient.HttpMethodDirector - Received redirect response 302 but no location header 2019-09-24 16:24:34,611 [81779185] INFO - atisticsWhiteListGroupsService - Request failed with status code 404 com.intellij.util.io.HttpRequests$HttpStatusException: Request failed with status code 404. Status=404, Url=https://download.jetbrains.com/fus/whitelist/bear/groups/IU.jsonat com.intellij.util.io.HttpRequests.throwHttpStatusError(HttpRequests.java:643)at com.intellij.util.io.HttpRequests.openConnection(HttpRequests.java:624)at com.intellij.util.io.HttpRequests.access$300(HttpRequests.java:59)at com.intellij.util.io.HttpRequests$RequestImpl.getConnection(HttpRequests.java:378)at com.intellij.util.io.HttpRequests$RequestImpl.getInputStream(HttpRequests.java:387)at com.intellij.util.io.HttpRequests$RequestImpl.readString(HttpRequests.java:442)at com.intellij.util.io.RequestBuilder.lambda$readString$3(RequestBuilder.java:85)at com.intellij.util.io.HttpRequests.doProcess(HttpRequests.java:523)at com.intellij.util.io.HttpRequests.process(HttpRequests.java:499)at com.intellij.util.io.HttpRequests.access$100(HttpRequests.java:59)at com.intellij.util.io.HttpRequests$RequestBuilderImpl.connect(HttpRequests.java:352)at com.intellij.util.io.RequestBuilder.readString(RequestBuilder.java:85)at com.intellij.internal.statistic.service.fus.FUStatisticsWhiteListGroupsService.getApprovedGroups(FUStatisticsWhiteListGroupsService.java:46)at com.intellij.internal.statistic.service.fus.FUStatisticsSettingsService.getApprovedGroups(FUStatisticsSettingsService.java:43)at com.intellij.internal.statistic.service.fus.collectors.FUStatisticsPersistence.persistProjectUsages(FUStatisticsPersistence.java:49)at com.intellij.internal.statistic.updater.StatisticsJobsScheduler$2.lambda$projectOpened$0(StatisticsJobsScheduler.java:110)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:230)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)

    修改 MAVEN的 Importing和Runner的JDK一致:

    刪除導入的jar包和modules

    右上角



    點擊減號即可

    總結(jié)

    以上是生活随笔為你收集整理的IDEA是否会嫌导jar包麻烦吗???赶快来学习maven吧,冲冲冲的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。