SVN检出Maven项目后遇到的问题记录(1)

最近要帮别的地市的同事开发软件,需要在SVN上检出他的项目,遇到了一些坑,记录下来以防后续再遇到坑

  • (1)从SVN中检出项目,我用的IDE是eclipse,这个很轻松,下面提供一个链接,博主写的很完整很清晰
    (https://www.cnblogs.com/sharpest/p/6231802.html)
  • (2)检出项目后,每个项目都是maven项目,在项目的图标上有个M图标.由于上传到SVN中的项目没有.classpath文件,所以项目目前还只是文件夹的形式,这时需要右键该项目,选择Properties配置该项目,找到Project facets选项,会提示project facets没有配置:

    这时就需要点击Convert to faceted form,来配置faceted表单.根据项目的实际情况选择即可,贴一张我的配置
  • (3)配置完毕后,这个项目就会变成正常的项目,但此时发现,项目没有Maven Dependencies(Maven依赖,内存jar包),这个是通过Properties=>Libraries中看到的.没有Maven Dependencies,所有的代码就没有jar包支撑.所以必须找到原因让Maven Dependencies出现.上网咨询,了解到最有可能是.classpath文件的问题,.classpath文件中缺少缺少classpathentry选项,可以检查下是否包含“org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER”或者
    “org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER”,这两者的区别就是版本的不同,这是一个叫m2e的maven插件,运行在eclipse中的,前者是新版本后该插件贡献给了eclipse成为了eclipse的一部分,后者是未成为eclipse一部分时的名字.
    具体是在.classpath文件中加入下面这段代码
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"/>
  • (4)保存后,项目就有Maven Dependencies了,这时有一个项目恢复正常了,另外一个项目却还是报错,里面的代码依然找不到引入的jar包.咨询同事后得知该项目是由两个Maven项目组成,其中一个common是通用的Maven项目,属于父级Maven项目,而另外一个项目icc则是我们要进行编程的项目,它依赖于common,而我并没有在配置中挂接他俩的关系,所以代码就会找不到依赖jar包.这段关系的挂接其实在.classpath文件中也有体现:
<classpathentry combineaccessrules="false" kind="src" path="/test-common"/>

这里描述的便是项目与项目之间的挂接关系,combine access rules就是结合挂接关系,而path中描述的是该项目所挂接的项目地址.
这个操作可以通过eclipse实现,右键需要挂接关系的项目,Properties=>Java build Path=>Projects,然后点击add,选择需要挂接的项目名称即可,点击OK,项目就挂接完毕.

至此,该项目的检出成功,可以正常使用了,后续会记载一些使用中的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值