m2e插件
m2e是eclipse官方出的maven插件,在eclipse luna以后的版本中已经默认集成。m2e可以在eclipse中十分方便的管理maven项目,管理本地和远程库的索引。
问题:无法使用内置的maven变量
maven内置了一些关于项目工程和系统的一些变量,避免项目配置的硬编码,开发和维护都十分便捷。但是m2e在plugin等配置中不能正确的获取这些变量的值,使用起来不是很方便。
以${basedir}
为例,${basedir}
表示工程根目录,在一些有输入或者输出的插件中使用起来十分简洁,可是在pom中如果直接使用,发现无法获取正确的值,如下图:
解决方法
m2e可以在properties
块获取正确的值,所以只需要在properties
部份定义一个新值,获取正确的值,在插件部分使用新值即可。
-
在
properties
定义prj.basedir
属性,值为${basedir}
,如下图:
-
在需要
${basedir}
的地方使用${prj.basedir}
代替。如下图:
相关阅读
Eclipse Maven插件(m2e)库索引跨workspace共享的实现