1.插件
::: 提示
可能有一些特殊的原因导致你需要使用 -maven- 而不是插件。主要有两个原因:
-maven- 和 -5.4.3.Final 有冲突,例如只能使用 -5.4.3.Final。
-maven-支持3.0,但是官方公告称从3.1开始才支持内置的文件上传功能(实际测试:3.0也能支持,但是有文件名中中文乱码的bug)。
:::
您可以在 存储库上找到有关 -maven- 插件的信息。但是,他们还明确指出,此包不在中央存储库中,而是在另一个(非中央)存储库中。
Note: this artifact is located at ICM repository (http://maven.icm.edu.pl/artifactory/repo/)
因此Maven无法从中央仓库下载8版本的Maven插件,因为中央仓库没有,当然阿里巴巴的镜像服务器也没有。
如果要使用 -maven- 插件,则需要另外明确地告诉它从哪里下载不在中央存储库中的包。这需要在 pom.xml 配置文件中进行配置。
依赖声明的整体结构(其他不相关的元素省略。另外,习惯上都是在build之后):
project
├── dependencies
├── build
└── pluginRepositories
├── pluginRepository
├── pluginRepository
├── ...
└── pluginRepository
主要内容包括:
alfresco-public
https://artifacts.alfresco.com/nexus/content/groups/public
false
true
...
...
...
考虑到海外仓库的网络问题,最好是直接从老师本地仓库复制他们下载的插件。
pom.xml 配置
...
${project.artifactId}
org.apache.tomcat.maven
tomcat8-maven-plugin
3.0-r1756463
8081
/${project.artifactId}
UTF-8
...
...
...
...
alfresco-public
https://artifacts.alfresco.com/nexus/content/groups/public
false
true
几点说明
当通过-maven-运行项目时,你可能会遇到一些问题。下面的问题是有些人会遇到的,但其他人不会遇到的。
问题 1:找不到 rt.jar
使用:run时,可能会出现以下错误:
Caused by: java.io.FileNotFoundException: C:\Program%20Files\Java\jdk1.8.0_201\jre\lib\rt.jar (系统找不到指定的路径。)
这是因为-maven-在运行时需要找到并使用rt.jar,但是其路径名中的空格(上面提到的%20)对-maven-造成了干扰。
::: 提示解决方案
:run-war 命令用于运行项目。
:::
问题2:访问后端遇到500错误
当使用 :run 时,您可能会收到无法解释的 500 错误。
::: 提示解决方案
:run-war 命令用于运行项目。
:::
问题 3:找不到 javax.-1.jar
在使用:run-war时,可能会遇到如下问题(我猜测和IDEA的版本有关,我用过2021.2.2等高版本之后就没再遇到过这个问题)。
Caused by: java.io.FileNotFoundException: C:\Program%20Files\JetBrains\IntelliJ%20IDEA%202020.2.3\plugins\maven\lib\maven3\lib\javax.inject-1.jar (系统找不到指定的路径。)
这是因为IDEA使用的内置Maven在路径名中有一个空格(上面的%20),对-maven-产生了干扰(对-maven-没有影响)。
::: 提示解决方案
如果遇到该问题,那么就需要将IDEA使用的Maven从内置Maven配置为外部Maven,并且这个Maven的路径中不能有空格。
:::
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。