child module ….pom.xml does not exist

a.注意module的名称是否正确,有时候命名问题会导致找不到项目的
b.注意一开始项目命名的规则问题注意一开始项目命名的规则问题

报错信息:

[INFO]
[INFO] --- maven-assembly-plugin:2.6:single (app) @ api ---
[INFO] Reading assembly descriptor: src/assembly/assembly.xml
[ERROR] OS=Windows and the assembly descriptor contains a *nix-specific root-relative-reference (starting with slash) /bin
[ERROR] OS=Windows and the assembly descriptor contains a *nix-specific root-relative-reference (starting with slash) /lib
[INFO] Building tar: F:\project\workspace\com\api\target\com-app.tar.gz
[ERROR] OS=Windows and the assembly descriptor contains a *nix-specific root-relative-reference (starting with slash) /bin
[ERROR] OS=Windows and the assembly descriptor contains a *nix-specific root-relative-reference (starting with slash) /lib
[INFO] Building zip: F:\project\workspace\com\api\target\com-app.zip

解决办法:
The working solution is to specify the empty outputDirectory:

<fileSets>
<fileSet>
<directory>${basedir}/src/main/resources</directory>
<outputDirectory></outputDirectory>
</fileSet>
</fileSets>

有错误产生的assembly.xml

<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
<id>app</id>
<formats>
<format>tar.gz</format>
<format>zip</format>
</formats> <includeBaseDirectory>false</includeBaseDirectory> <fileSets>
<fileSet>
<directory>${project.build.directory}/bin</directory>
<outputDirectory>/bin</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.build.directory}</directory>
<includes>
<include>*.jar</include>
</includes>
<excludes>
<exclude>*sources.jar</exclude>
</excludes>
<outputDirectory>/lib</outputDirectory>
</fileSet>
</fileSets>
</assembly>

https://stackoverflow.com/questions/28500401/maven-assembly-plugin-warning-the-assembly-descriptor-contains-a-filesystem-roo

使用maven-compiler-plugin 时
POM文件如下:

<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>

[WARNING] Some problems were encountered while building the effective model for com.xxx.xxx:xxxx:jar:0.0.1-SNAPSHOT 
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. @ line 72, column 12

修改后如下,OK了

    <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>

Configuring Your Compiler Plugin
Since the Compiler Plugin executes automatically during their phases, you don't have to put executions unlike many other plugins. However, you should specify the version of the Compiler Plugin.

<project>
...
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<!-- put your configurations here -->
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
...
</project>

http://maven.apache.org/plugins/maven-compiler-plugin/usage.html

maven install生成最终的构件包xxx-1.0.0.war(xxx-1.0.0.jar)后,
在其下的WEB-INF/lib(xxx-1.0.0.jar\BOOT-INF\lib)中,会包含我们被标注为scope=compile的构件的jar包,
而不会包含我们被标注为scope=provided的构件的jar包。这也避免了此类构件当部署到目标容器后产生包依赖冲突。

依赖范围控制哪些依赖在哪些classpath 中可用,哪些依赖包含在一个应用中。让我们详细看一下每一种范围:
compile (编译范围)
compile是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范围。编译范围依赖在所有的classpath 中可用,同时它们也会被打包。

provided (已提供范围)
provided 依赖只有在当JDK 或者一个容器已提供该依赖之后才使用。例如, 如果你开发了一个web 应用,你可能在编译 classpath 中需要可用的Servlet API 来编译一个servlet,但是你不会想要在打包好的WAR 中包含这个Servlet API;这个Servlet API JAR 由你的应用服务器或者servlet 容器提供。已提供范围的依赖在编译classpath (不是运行时)可用。它们不是传递性的,也不会被打包

runtime (运行时范围)
runtime 依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如,你可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC
驱动实现。

test (测试范围)
test范围依赖 在一般的编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用。

system (系统范围)
system范围依赖与provided 类似,但是你必须显式的提供一个对于本地系统中JAR 文件的路径。这么做是为了允许基于本地对象编译,而这些对象是系统类库的一部分。这样的构件应该是一直可用的,Maven 也不会在仓库中去寻找它。如果你将一个依赖范围设置成系统范围,你必须同时提供一个 systemPath 元素。注意该范围是不推荐使用的(你应该一直尽量去从公共或定制的 Maven 仓库中引用依赖)。

package阶段得到的是build目录下编译后的类包(jar),
install是把这个包和一些maven的元信息(比如pom.xml)复制到本地仓库,
assembly一般是把build结果和一些资源文件组成一个可以对外发布的包(zip包等),部署会用到。

Non-resolvable parent POM: Could not find artifact com.tangcheng:dubbo:pom:0.0.1-SNAPSHOT and 'parent.relativePath' points at no local POM @ line 14, column 13 -> [Help 2]

原因:

开始新的多个模块的项目时,其中的parent项目要先install一次。
就是新建了父项目后,一定要运行mvn install命令,才能建立子项目

解决办法:把pom中的modules删除,然后执行mvn install。然后ctrl+z把刚才删除的信息还原。

1、

Failure to transfer org.apache.poi:poi-ooxml-schemas:jar:3.10.1 from http://repo.maven.apache.org/maven2 was cached in the local repository,
resolution will not be reattempted until the update interval of central has elapsed or updates are forced.
Original error: Could not transfer artifact org.apache.poi:poi-ooxml-schemas:jar:3.10.1 from/to central (http://repo.maven.apache.org/maven2):
Connection reset。

这句话的意思是: 对于这个包从maven中心传输到本地仓库失败,决定不会重新尝试下载jar包,直到mavne再改更新索引,或强制更新。

实际的解决办法是:直接去本地仓库(local repository),把这个org.apache.poi存放的目录删除掉(因为包没有下载下来),
(1)刷新你的项目(在项目上点右键-->刷新);
(2)在你的项目上右击,选择maven--->update(刷新Maven配置)就可以了,让maven重新下载;
(3)编译maven项目。在项目上点右键-->Run As -->Maven build

使用说明:
如果pom.xml中配置的jar不能下载,提示pom.xml中报错,反复使用(1)和(2)操作;
如果pom.xml文件没有报错,就使用(3)来处理;

http://zhanghua.1199.blog.163.com/blog/static/464498072013529936189/

2、

Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
注:
如果项目编码设为utf-8,maven-resources-plugin如果使用windows自带的GBK编码,则就会出现乱码。乱码后就会编译不过。

解决办法:
在pom.xml中build-plugins下将plugin:maven-resources-plugin设置为与项目的编码一致即可。譬如此处设置为UTF-8

    <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>

</plugin>

</plugins>
<finalName>defalut_goal</finalName>
<defaultGoal>compile</defaultGoal>
</build>

3、
eclipse安装的maven插件是m2eclipse,使用命令行时就已经指定了phase,而使用m2eclipse的【Run As】-【Maven build】时并未为其指定goal或phase
在pom.xml中指定defaultGoal的方式:

    <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
<finalName>defalut_goal</finalName>
<defaultGoal>compile</defaultGoal>
</build>

此处指定为compile

在eclipse中指定(第一次使用使用Maven build时会弹出此对话框):

4、
maven 下载 源码和javadoc命令

(1)Maven命令下载源码和javadocs
当在IDE中使用Maven时如果想要看引用的jar包中类的源码和javadoc需要通过maven命令下载这些源码,然后再进行引入,通过mvn命令能够容易的达到这个目的:
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc
命令使用方法:首先进入到相应的pom.xml目录中,然后执行以上命令:
第一个命令是尝试下载在pom.xml中依赖的文件的源代码。
第二个命令:是尝试下载对应的javadocs
但是有可能一些文件没有源代码或者javadocs

(2)通过配置文件添加
打开maven配置文件 setting.xml文件(.../.m2/settings.xml) 增加如下配置:

<profiles>
<profile>
<id>downloadSources</id>
<properties>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</properties>
</profile>
</profiles> <activeProfiles>
<activeProfile>downloadSources</activeProfile>
</activeProfiles>

(3)配置eclipse
Window > Preferences > Maven and checking the "Download Artifact Sources" and "Download Artifact JavaDoc" options

http://blog.csdn.net/topwqp/article/details/8902863

Setting the -source and -target of the Java Compiler

Sometimes when you may need to compile a certain project to a different version than what you are currently using. The javac can accept such command using -source and -target. The Compiler Plugin can also be configured to provide these options during compilation.

For example, if you want to enable assertions (-source 1.4) and also want the compiled classes to be compatible with JVM 1.4 (-target 1.4), you can then put:

<project>
[...]
<build>
[...]
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>
</plugins>
[...]
</build>
[...]
</project>

http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html

http://jynine.iteye.com/blog/1890842

Maven Compiler Plugin

The Compiler Plugin is used to compile the sources of your project. Since 3.0, the default compiler is javax.tools.JavaCompiler (if you are using java 1.6) and is used to compile Java sources. If you want to force the plugin using javac, you must configure the plugin option forceJavacCompilerUse.

Also note that at present the default source setting is 1.5 and the default target setting is 1.5, independently of the JDK you run Maven with. If you want to change these defaults, you should set source and target as described in Setting the -source and -target of the Java Compiler.

Other compilers than javac can be used and work has already started on AspectJ, .NET, and C#.

This Compiler Plugin corresponds to Maven 1.x's Java Plugin.

http://maven.apache.org/plugins/maven-compiler-plugin/

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project rruHotloadFileMaker: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

  1. 在eclipse的菜单中,进入 Window > Preferences > Java > Installed JREs > Execution Environments,选择JavaSE-1.6, 在右侧选择jdk.

  2. 然后在maven菜单中使用 “update project ...(刷新maven配置)

http://blog.csdn.net/fox_lht/article/details/16369147

使用JDK1.8安装后,会在Win10 path中新增 C:\ProgramData\Oracle\Java\javapath
这样也会导致出现“No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?”

解决的办法是把“C:\ProgramData\Oracle\Java\javapath”从path中删除,再把java.exe所在路径添加到path中

在别的机子上创建一个maven工程,复制到本机上导入,出现pom.xml文件错误,提示错误如下
Multiple annotations found at this line:
- Execution default-testResources of goal org.apache.maven.plugins:maven-resources-          plugin:2.4.3:testResources failed:
 Plugin org.apache.maven.plugins:maven-resources-plugin:2.4.3 or one of its dependencies could not be resolved: Failed to collect
 dependencies for org.apache.maven.plugins:maven-resources-plugin:jar:2.4.3 ()

错误信息出现在pom头的project标签,project标签内容是 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

原因 这是由于缺少maven-resources-plugin-2.4.3.jar文件。这个文件是在{user.home}\.m2\repository\org\apache\maven\plugins\maven-resources-plugin\下。{user.home}是maven的配置路径,一般是我的文档,是window-preferences-MyEclipse-Maven4MyEclipse-User Setting里面的Local Repository。

解决方案 1、在pom.xml文件中加入maven-resources-plugin配置

<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.3</version>
</dependency>

2、在命令行下运行mvn install,
如果执行正确应该会在{user.home}\.m2\repository\org\apache\maven\plugins\maven-resources-plugin\下看到maven-resources-plugin-2.4.3.jar文件
3、刷新工程(右键工程选择刷新项)
4、刷新maven配置,右键工程节点,选择Maven-Update Project Configuration

http://blog.csdn.net/imlmy/article/details/8268293

用eclipse装m2eclipse的时候装完后创建项目的时候报错:
Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE from any of the configured repositories.
解决方式:
1.从http://maven.oschina.net/content/groups/public/org/apache/maven/archetypes/maven-archetype-quickstart/  下载最新版maven-archetype-quickstart-1.1.jar
2.命令行到下载目录下执行mvn install:install-file -DgroupId=org.apache.maven.archetypes -DartifactId=maven-archetype-quickstart -Dversion=1.1 -Dpackaging=jar -Dfile=maven-archetype-quickstart-1.1.jar
http://www.cnblogs.com/xsi640/p/3758095.html

在install maven-archetype-j2ee-simple-1.0-alpha-4.jar后,使用命令行或m2eclipse插件均不能创建 archetype为maven-archetype-j2ee-simple的项目

m2eclipse插件报错:
Unable to create project from archetype [org.apache.maven.archetypes:maven-archetype-j2ee-simple:RELEASE]
Error merging velocity templates

使用mvn archetype:generate后的报错信息:

[WARNING] Error reading archetype catalog http://repo.maven.apache.org/maven2
org.apache.maven.archetype.source.ArchetypeDataSourceException: Error parsing a
chetype catalog.
at org.apache.maven.archetype.source.CatalogArchetypeDataSource.readCat
log(CatalogArchetypeDataSource.java:194)
at org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource.d
wnloadCatalog(RemoteCatalogArchetypeDataSource.java:121)
at org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource.g
tArchetypeCatalog(RemoteCatalogArchetypeDataSource.java:87)
at org.apache.maven.archetype.DefaultArchetypeManager.getRemoteCatalog(
efaultArchetypeManager.java:216)
at org.apache.maven.archetype.DefaultArchetypeManager.getRemoteCatalog(
efaultArchetypeManager.java:205)
at org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.ge
ArchetypesByCatalog(DefaultArchetypeSelector.java:200)
at org.apache.maven.archetype.ui.generation.DefaultArchetypeSelector.se
ectArchetype(DefaultArchetypeSelector.java:71)
at org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.exec
te(CreateProjectFromArchetypeMojo.java:181)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(Defaul
BuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecuto
.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecuto
.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecuto
.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProj
ct(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProj
ct(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThr
adedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecyc
eStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:582)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Lau
cher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.ja
a:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(L
uncher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java
356)
Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Expected r
ot element 'archetype-catalog' but found 'html' (position: START_TAG seen <html
... @1:6)
at org.apache.maven.archetype.catalog.io.xpp3.ArchetypeCatalogXpp3Reade
.read(ArchetypeCatalogXpp3Reader.java:737)
at org.apache.maven.archetype.catalog.io.xpp3.ArchetypeCatalogXpp3Reade
.read(ArchetypeCatalogXpp3Reader.java:554)
at org.apache.maven.archetype.catalog.io.xpp3.ArchetypeCatalogXpp3Reade
.read(ArchetypeCatalogXpp3Reader.java:568)
at org.apache.maven.archetype.source.CatalogArchetypeDataSource.readCat
log(CatalogArchetypeDataSource.java:186)
... 28 more
[WARNING] No archetype found in remote catalog. Defaulting to internal catalog
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/archetypes/m
ven-archetype-j2ee-simple/1.0/maven-archetype-j2ee-simple-1.0.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 03:59 min

maven打包编译时后台一直输出警告信息
[WARNING] File encoding has not been set, using platform encoding GBK, i.e. build is platform dependent!
找了半天,原来只要在pom.xml文件中增加一个配置项即可
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

http://blog.csdn.net/crazycoder2010/article/details/7077233

编译(执行命令:mvn install)的时候,又报错

Failed to execute goal on project ui:
Could not resolve dependencies for project <<package>>:ui:war:1.0: Failed to collect dependencies for [javax.servlet:servlet-api:jar:2.5 (provided),
org.springframework:spring-core:jar:3.0.5.RELEASE (compile),
org.springframework:spring-web:jar:3.0.5.RELEASE (compile),
cglib:cglib:jar:2.2 (compile), org.springframework:spring-aop:jar:3.0.5.RELEASE (compile),
org.springframework:spring-webmvc:jar:3.0.5.RELEASE (compile), org.springframework:spring-context:jar:3.0.5.RELEASE (compile),
org.freemarker:freemarker:jar:2.3.18 (compile), gr.imu.ntua.tweetinspire:services:jar:1.0 (compile),
org.cloudfoundry.samples:tomcat7-standalone:tar.gz:7.0.29 (compile), org.slf4j:slf4j-api:jar:1.6.1 (compile),
org.slf4j:slf4j-log4j12:jar:1.6.1 (compile), org.slf4j:jcl-over-slf4j:jar:1.6.1 (compile),
commons-logging:commons-logging:jar:1.1.1 (compile), junit:junit:jar:4.8.1 (test),
org.springframework:spring-test:jar:3.0.5.RELEASE (test), org.dbunit:dbunit:jar:2.4.8 (test)]: Failed to read artifact descriptor for org.cloudfoundry.samples:tomcat7-standalone:tar.gz:7.0.29: Could not transfer artifact org.cloudfoundry.samples:tomcat7-standalone:pom:7.0.29 from/to jets3t (http://www.jets3t.org/maven2): Access denied to: http://www.jets3t.org/maven2/org/cloudfoundry/samples/tomcat7-standalone/7.0.29/tomcat7-standalone-7.0.29.pom, ReasonPhrase:Forbidden

解决方法一:

后面就将pom.xml中的一段依赖jdk的代码注释掉,

<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.5.0</version>
<scope>system</scope>
<systemPath>D:\java\jdk\lib\tools.jar </systemPath>
</dependency>

然后清理Eclipse项目(点击Eclipse编辑器中的Project, 然后点击clean),再将上面这段代码的注释取消掉。

解决方法二: 如果以上方法还没有解决问题,还可以尝试关闭maven项目在项目启动时自动下载更新仓库选项。操作方法如下:

点击Eclipse中的window菜单,选择Preferences,点击左侧的Maven ,然后去掉Download repository index updates on startup选项前面的对勾,然后清理Eclipse项目(Project-->clean)。

http://blog.csdn.net/daydayupzzc/article/details/38818045

使用maven创建web工程,将Spring配置文件applicationContext.xml放在src/resource下,用eclipse编译时提示class path resource [applicationContext.xml] cannot be opened because it does not exist错误。但是用mvn clean package命令编译时成功的。
web.xml配置的如下

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>

用google搜索一下(之前google用不了,用百度搜到蛋疼),发现是由于classpath不是指向resource路径,导致一直找不到文件。需要在classpath后面加个*,这样就解决问题了。

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext.xml</param-value>
</context-param>

http://blog.csdn.net/imlmy/article/details/8263531

创建Maven项目的操作步骤:
1、一般用 Eclipse 建项目的步骤如下:
(1)建一个普通项目
(2)建 pom.xml,定义好构件
(3)项目右键菜单,Configure -> Convert to Maven Project
(4)注意这些目录和文件不要加入版本控制:.settings, target, .classpath, .project

2、http://www.cnblogs.com/candle806/p/3439469.html

java.lang.NoClassDefFoundError: org/junit/runners/model/MultipleFailureException
 at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.withAfterClasses(SpringJUnit4ClassRunner.java:188)
 at org.junit.runners.ParentRunner.classBlock(ParentRunner.java:145)
 at org.junit.runners.ParentRunner.run(ParentRunner.java:235)

使用maven-source-plugin打包包含源码
maven-source-plugin插件打出的包包含源码,引用包含源码的包,在eclipse等ide中查看源文件时可以更易读些。
要生成带source的jar, 需要在pom.xml中包含下面的插件

    <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

然后执行mvn install, 打包成功的话,就可以在target文件夹中找到带source的jar包,通常命名为 xxx-version-sources.jar

maven打包编译的错误:sun.misc.BASE64Decoder是Sun的专用API,可能会在未来版本中删除

今天遇到 sun.misc.BASE64Decoder是Sun的专用API,可能会在未来版本中删除 的错误

算是maven的一个bug吧。

maven-compiler-plugin 2.3.2 发布以后把这个错误改成了告警。

所以只要将这个插件升级一下就好了。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
</plugin>

不料有出现了
程序包com.sun.image.codec.jpeg不存在
的问题,继续查,这次需要给环境变量加一个jar包。
最终完美的解决办法:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<verbose />
<bootclasspath>${java.home}/lib/rt.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>

--------------------- 
作者:天天 
来源:CSDN 
原文:https://blog.csdn.net/tiantiandjava/article/details/41483311 
版权声明:本文为博主原创文章,转载请附上博文链接!

resolution will not be reattempted until the update interval of XXX has elapsed or updates are force

环境

Java:1.8
maven:3.6.1

前言

我只是在pom.xml文件中,将version的数字改了下,结果出问题了。
包总是下不下来。所以idea的引用也没有更新。

其实这是一个很简单的错误,奈何我以前的工作都是手动导包。导致我maven的能力偏弱。

错误消息

[ERROR] Failed to execute goal on project model:
Could not resolve dependencies for project com.xingren.clinic:model:jar:1.0.0-SNAPSHOT: Failure to find com.xingren.service:medevac-client:jar:1.2.33-SNAPSHOT in http://nexus.aihaisi.com/repository/public/ was cached in the local repository,
resolution will not be reattempted until the update interval of xr-public has elapsed or updates are forced -> [Help 1]

主要错误消息,如题:
就是resolution will not be reattempted until the update interval of XXX has elapsed or updates are force

意思就是:

在 XXX的更新间隔过去或强制更新之前,不会重新尝试解析。

如果你去本地的maven仓库,你会发现,其只有lastUpdate结尾的文件,没有jar包。

这个时候,你无论怎么点击IDEA中的Reimports All Maven Projects都是没有用的。原因上面也说了,要么等更新时间过去,要么强制更新。
maven的默认更新时间为day,即一天更新一次。

所以我们一般都是采用强制更新的方式。

解决办法

命令行的方式

mvn clean install -U

修改settings.xml

添加<updatePolicy>always</updatePolicy>

<repositories>
<repository>
<id>xr-snapshots</id>
<url>http://nexus.alibaba.com/repository/snapshots/</url>
<snapshots>
<enabled>true</enabled>
<!-- 注意 -->
<updatePolicy>always</updatePolicy>
</snapshots>
<releases>
<enabled>false</enabled>
<!-- 注意 -->
<updatePolicy>always</updatePolicy>
</releases>
</repository>
</repositories> <pluginRepositories>
<pluginRepository>
<id>xr-plugins</id>
<name>xingren plugins</name>
<url>http://nexus.alibaba.com/repository/public/</url>
<releases>
<enabled>true</enabled>
<!-- 注意 -->
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<!-- 注意 -->
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>

我采用的是使用命令行。

总结

在确定远程仓库jar包存在,配置也没有错的情况下,
使用强制更新。

参考地址:
https://www.cnblogs.com/huojiao2006/articles/5195965.html
https://stackoverflow.com/questions/4701532/force-maven-update

https://blog.csdn.net/u013066244/article/details/91986308

maven常见问题汇总的更多相关文章

  1. 使用maven下载依赖包及maven常见问题汇总

    最近下载了SPRING3.1.4,发现只有SPRING相关的源码,没有其依赖的jar包.SPRING依赖的jar相当多,自己一个一个的下载比较费劲,就仔细阅读了SPRING下载说明,新版本的SPRIN ...

  2. CentOS安装Oracle数据库详细介绍及常见问题汇总

    一.安装前准备 1.软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命 ...

  3. SVN集中式版本控制器的安装、使用与常见问题汇总

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,它采用了分支管理系统,集中式版本控制器 官方网站:https://www.visualsvn.com/ 下载右边的服务器端,左边的客 ...

  4. H5项目常见问题汇总及解决方案

    H5项目常见问题汇总及解决方案 H5   2015-12-06 10:15:33 发布 您的评价:       4.5   收藏     4收藏 H5项目常见问题及注意事项 Meta基础知识: H5页 ...

  5. Installshield脚本拷贝文件常见问题汇总

    原文:Installshield脚本拷贝文件常见问题汇总 很多朋友经常来问:为什么我用CopyFile/XCopyFile函数拷贝文件无效?引起这种情况的原因有很多,今天略微总结了一下,欢迎各位朋友跟 ...

  6. MVC 网站部署常见问题汇总

    一:TGIShare项目是一个MVC5的网站程序,部署在了IIS上,使用的Windows验证方式,并在本机设置了计划任务定时调用某个地址执行命令.问题汇总如下: 1.Window Server 200 ...

  7. J2EE进阶(十)SSH框架整合常见问题汇总(一)

    SSH框架整合常见问题汇总(一) 前言 以下所列问题具有针对性,但是遇到同类型问题时均可按照此思路进行解决. HTTP Status 404 - No result defined for actio ...

  8. mysql进阶(十六)常见问题汇总

    mysql进阶(十六)常见问题汇总 MySQL视图学习: http://www.itokit.com/2011/0908/67848.html 执行删除操作时,出现如下错误提示: 出现以上问题的原因是 ...

  9. 转---CentOS安装Oracle数据库详细介绍及常见问题汇总

    一.安装前准备 1.软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命 ...

随机推荐

  1. 猪猪的机器学习笔记(十四)EM算法

    EM算法 作者:樱花猪   摘要: 本文为七月算法(julyedu.com)12月机器学习第十次次课在线笔记.EM算法全称为Expectation Maximization Algorithm,既最大 ...

  2. STL之stack(栈)

    栈(statck)这种数据结构在计算机中是相当出名的.栈中的数据是先进后出的(First In Last Out, FILO).栈只有一个出口,允许新增元素(只能在栈顶上增加).移出元素(只能移出栈顶 ...

  3. 【转】从底层了解ASP.NET体系结构

    从底层了解ASP.NET体系结构 原文:http://blog.csdn.net/zhoufoxcn/article/details/1890158 Java体系架构的书多如牛毛,比如SSH架构什么的 ...

  4. Nginx 之六: Nginx服务器的反向代理功能

    一:Nginx作为正向代理服务器: 1.正向代理:代理(proxy)服务也可以称为是正向代理,指的是将服务器部署在公司的网关,代理公司内部员工上外网的请求,可以起到一定的安全作用和管理限制作用,正向代 ...

  5. WebRTC Demo - getUserMedia()

    WebRTC介绍 WebRTC提供三类API: MediaStream,即getUserMedia RTCPeerConnection RTCDataChannel getUserMedia已经由Ch ...

  6. Linux内存分析

    Linux命令----分析内存的瓶颈    为了提高磁盘存取效率, Linux做了一些精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换), 还采取了两种主要Cac ...

  7. 安装好maven后,在cmd中运行mvn报一下的错误

    当然报错,你这个路径下并没有pom.xml文件.你可以运行这个命令: mvn -version.

  8. 【IPC进程间通信之四】数据复制消息WM_COPYDATA

    IPC进程间通信+数据复制消息WM_COPYDATA                IPC(Inter-Process Communication,进程间通信).         数据复制消息WM_C ...

  9. 一个轻client,多语言支持,去中心化,自己主动负载,可扩展的实时数据写服务的实现方案讨论

    背景 背景是设计一个实时数据接入的模块,负责接收client的实时数据写入(如日志流,点击流),数据支持直接下沉到HBase上(兴许提供HBase上的查询),或先持久化到Kafka里.方便兴许进行一些 ...

  10. js中的总结汇总(以后的都收集到这篇)

    点1:js中的比较字符串是否相等,js中是用"=="这个来判断是否相等,这点跟java中不一样,java中是.equals()这种方法. 在之前写的ajax的demo中,因为用了. ...