Maven 中设置工程的语言编译级别(compiler level)

Maven 工程缺省的情况下,它的编译级别(compiler level)是 JDK 1.5 这一级。对于现在的许多项目而言,这已经太老了,很多特性也不支持,所以,我们通常需要定义自己所需要的语言级别。

具体而言,有两种方式,一是添加两个属性值,另外是配置 compiler plugin,详细参考:http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html

设置属性值

在 pom.xml 的 properties 标签中加入以下属性值:

[xml]

<properties>
      <maven.compiler.source>1.8</maven.compiler.source>
      <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

[/xml]

设置 compiler plugin

如果上述设置在某些情况下还不行,则也可以通过设置 compiler plugin 来实现,这点可以通过在 pom.xml 文件的 build 节点下的 plugins 节点下面增加一个 maven-compiler-plugin 来实现,具体如下:

[xml]

<build>
	<plugins>
		<plugin>
			<artifactId>maven-compiler-plugin</artifactId>
			<version>3.1</version>
			<configuration>
				<source>1.8</source>
				<target>1.8</target>
			</configuration>
		</plugin>
	</plugins>
</build>

[/xml]

以上配置将语言级别设置为 Java 1.8,你也可以根据需要设为 1.7 或 1.6.

之后,在工程下:右键--maven--update project 来重新编译整个项目。(适用于 Eclipse)

Maven 中央仓库访问过慢的解决方案——设置国内镜像

介绍了如何设置 maven 中央仓库的国内镜像以解决访问速度过慢等问题。

在现今的 Java 开发活动中,无论你是用古老的 Ant,还是 Maven 本身,亦或是 Gradle,你都经常需要访问 Maven 的中央仓库以获取所依赖的包。鉴于中央仓库的访问巨大,再背上我们特殊国情的友军火力的锅,获取依赖的过程中经常慢得令人发指,甚至导致构建失败,IDE 失去响应等等。

为此,最好的方式是为中央仓库设置国内镜像,这样对中央仓库的访问将会被镜像到国内的镜像上,访问速度将得到有效提升。

国内公共镜像

目前为止,国内较好的公共镜像是阿里巴巴的阿里云所提供的。

其地址为:http://maven.aliyun.com/nexus/content/groups/public/

如果你有更好的发现,欢迎留言告诉我。

配置使用镜像

如果你安装有本地原生的 Maven,

如果直接使用 IDE 的 Maven 插件,相关设置见后面的介绍。

那么去到你的 Maven 安装目录的 conf 目录下,找到 settings.xml,比如在我的机子上是:

image

友情提示:修改前最好先做一备份,比如如上所示,拷贝一份,改名为 settings.xml.bak。

打开它,找到 mirrors 节点,加入以下内容:

alimaven aliyun maven [http://maven.aliyun.com/nexus/content/groups/public/](http://maven.aliyun.com/nexus/content/groups/public/) central

最终结果如下图所示:

image

配置 IDE 中的 Maven 插件

许多 IDE 本身也带有 Maven 插件,你可以配置使用本地 Maven,或直接使用 IDE 本身的插件,下面一并说下相关配置。

以 Eclipse 为例,打开 Windows -- Preference,在过滤框中键入“maven”,找到 Maven -- Installations,如下:

image

如果你打算用本地 Maven 来构建,那么在这里要添加并勾选上本地 Maven 的选项,如上所示。

默认会使用上述第一项:EMBEDDED,即 IDE 本身所带的嵌入式 Maven 插件。

然后去到 User Settings 中,

image

确保 Global Settings 中用的是我们刚才设置的配置文件,然后按下“Update Settings”以更新设置。

如果你没有安装本地 Maven,则可以在上述图中蓝色框中所指的文件中添加以上配置。

注:其中的 upfu 是我的本地用户名。

观察以验证配置

当以上配置完成并生效后,可以新建一个 Maven 项目测试一下,或者简单修改一下 pom.xml,观察依赖加载的情况,以 Eclipse 为例,如果在 progress 视图中观察到如下的情况:

image

更新动作的地址中出现了所配置的 aliyun 的 url,则说明已经配置成功了。