今天下午最后近1小时及晚上2个多小时,我都花费时间在工程环境配置上,自尊心被严重摧残,各种郁闷和抱怨。源头是我部分刷新代码后运行工程依赖的jar报错,后来找同事发现是因为我没更新pom.xml文件,重新刷新pom文件后突然发现eclipse的两个工程无法显示maven仓库,切换各种视图project manager和packpage manger等各种视图都是不行,尝试右键maven-》update project还是不行,尝试网上说的方法:1.把工程去掉maven属性,然后在命令行窗口执行mvn clean命令,然后再工程右键configuration中把工程转为maven,还是不行。2.尝试在eclipse中删掉工程,去掉工程中的.classpath,.project文件后再次导入工程还是报相同的maven错误。3.同事找到一个可用的maven工程,把里面的.classpath文件复制到不行的工程中后刷新居然正常出现了maven的仓库。但对另一个工程还是不行,修改.project文件,.classpath文件后最终在packpage manager中找到了本地仓库,目前为止还剩下一个问题就是不知为何我电脑环境下的maven无法下载某个jar包依赖的jar包,而其它电脑上可以,目前也没有同事有很好的办法解决此问题。为此我被深深的打击了,工程无法正常运行,我却想不到任何自己确定的尝试解决方法,网上各种随波逐流的知识基本不能解决我个性化问题,想到最后感觉还是自己基础知识太差,对eclipse工程、maven的机制不很理解,要想彻底解决该问题,我必须吸取今天的教训,彻底弄明白整个问题,以后不要再犯类似的环境问题了。

elipse为工程创建的各项内容含义:

.classpath 文件

Xml代码  
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <classpath>
  3. <classpathentry kind="src" path="src"/>
  4. <classpathentry kind="src" path="test"/>
  5. <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
  6. <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
  7. <classpathentry kind="lib" path="lib/dom4j-1.6.1.jar">
  8. <attributes>
  9. <attribute name="javadoc_location" value="file:/home/wpc/Work/Apache/dom4j-1.6.1/docs/api$
  10. </attributes>
  11. </classpathentry>
  12. <classpathentry kind="output" path="bin"/>
  13. </classpath>

从数据上我们容易看出,上面描述了工程的依赖文件:

  1. 源文件的具体位置(kind="src")
  2. 运行的系统环境(kind="con")
  3. 工程的library的具体位置信息(kind="lib")
  4. 在每个lib的xml子节点中,有关于它的其它配置信息(例如我配置的那个"javadoc_location")
  5. 项目的输出目录(kind="output")

总体上说这个文件就是配置整个工程的运行环境。

.project

Xml代码  
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <projectDescription>
  3. <name>CreateInterpret</name>
  4. <comment>JavaCC Nature@key 32303037303632392D3130303020437265617465496E746572707265742F777063 </comment>
  5. <projects>
  6. </projects>
  7. <buildSpec>
  8. <buildCommand>
  9. <name>sf.eclipse.javacc.javaccbuilder</name>
  10. <arguments>
  11. </arguments>
  12. </buildCommand>
  13. <buildCommand>
  14. <name>org.eclipse.jdt.core.javabuilder</name>
  15. <arguments>
  16. </arguments>
  17. </buildCommand>
  18. </buildSpec>
  19. <natures>
  20. <nature>org.eclipse.jdt.core.javanature</nature>
  21. <nature>sf.eclipse.javacc.javaccnature</nature>
  22. </natures>
  23. </projectDescription>

从数据上看,我们可以了解到这些配置主要是描述工程的基本信息:

  1. 工程名<name></name>
  2. 工程注释描述<comment></comment>
  3. 运行时需要的额外Eclipse插件<natures></natures>,及其具体加载方式信息<buildSpec></buildSpec>

如果你在开发过程中向工程里面加入了很多额外的插件,则必然会导致你的Eclipse启动速度变慢。在这种情况下,你可以到这个文件里面去掉一些插件,不过这样一来你在开启那些关联文件的时候会加载那些插件。

.settings

这里面存放各种插件的配置文件。

然后查了下java jar包依赖分析工具,发现还是很多,除了之前知道的jdepand外,还有Class Dependency Analyzer (CDA)、JarAnalyzer等,主要关注了CDA,

http://www.dependency-analyzer.org/#PluginAPI

貌似很强大,但没看到关于原理的介绍,随后开发任务不紧张的时候要尝试下。

eclipse工具再学习的更多相关文章

  1. 学汇编的时候可以拿IDA之类的反汇编工具辅助学习,再用gdb或者IDA动态调试,跟踪每条指令的 执行结果。都不难

    作者:潘安仁链接:https://www.zhihu.com/question/40720890/answer/87926792来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  2. FFmpeg再学习 -- 硬件加速编解码

    为了搞硬件加速编解码,用了一周时间来看 CUDA,接下来开始加以总结. 一.什么是 CUDA (1)首先需要了解一下,什么是 CUDA. 参看:百度百科 -- CUDA 参看:CUDA基础介绍 参看: ...

  3. SVN版本控制工具使用学习

    SVN版本控制工具使用学习 Subversion是优秀的版本控制工具. 1.下载和搭建SVN服务器 http://subversion.apache.org/packages.html 类型有5种,推 ...

  4. eclipse工具的使用心得

    一.eclipse工具的使用 eclipse是一个开源的IDE,进行javaEE开发一般使用myeclipse插件比较方便 1. java代码的位置 1)选择工作空间workspace 选择一个文件夹 ...

  5. Tomcat下载以及安装、eclipse工具配置tomcat9的具体步骤

    (小白经验,大咖勿喷) 开始学javaweb的一些技术了,最让人头疼的就是环境的配置以及必要软件的安装,比如数据库mysql.服务器Tomcat.eclipse工具等等. 自己也度娘了很多大咖的经验, ...

  6. eclipse工具maven项目打包文件不是最新修改的

    1.问题描述:maven项目,完成一些功能开发后,在进行打包更新服务器系统时,本地eclipse工具对文件打成jar包操作,更新到服务器上没有修改的效果,包括打包整个工程为一个war包,也是有同样问题 ...

  7. FFmpeg再学习 -- SDL 环境搭建和视频显示

    继续看雷霄骅的 课程资料 - 基于FFmpeg+SDL的视频播放器的制作 一.SDL 简介 参看:WIKI -- Simple DirectMedia Layer 参看:最简单的视音频播放示例9:SD ...

  8. FFmpeg再学习 -- FFmpeg解码知识

    继续看雷霄骅的 课程资料 - 基于FFmpeg+SDL的视频播放器的制作 前面用了五个篇幅来讲 FFmpeg,其主要目的是为实现将图片转视频的功能. 总的来说,对于 FFmepg 多少有一些了解了.但 ...

  9. 版本控制工具SVN学习

    教学视频链接:https://edu.aliyun.com/course/83?spm=5176.10731334.0.0.778e6580zC0Ri0 版本控制工具SVN学习 1,SVN的简介 在实 ...

随机推荐

  1. hadoop 1.2.1 安装步骤 伪分布式

    最近在系统的学习hadoop 课程第一步是安装hadoop1.x,具体安装步骤如下: 一.系统安装 本文使用centos6.5安装,具体安装步骤省略 二.jdk安装 下载jdk1.7.0_51解压,在 ...

  2. 利用jquery表格添加一行并在每行第一列大写字母显示实现方法

    表格添加一行并在每行第一列大写字母显示jquery实现方法 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN& ...

  3. bzoj3393 [Usaco2009 Jan]Laserphones 激光通讯

    Description Input 第1行输入w和H,之后W行H列输入地图,图上符号意义如题目描述. Output 最少的对角镜数量. Sample Input 7 8 ....... ...... ...

  4. <转载>模板声明中template <typename T>和template <class T>

    原文地址http://blog.csdn.net/bug07250432/article/details/10150625 在c++Template中很多地方都用到了typename与class这两个 ...

  5. Nx32926 命令关机

    一. poweroff关机命令 ~ # poweroff ~ # baud=, quot= w-config: 8bits/char umount: devtmpfs busy - remounted ...

  6. 雅虎工程师初始化css

    /*css reset code */ /**** 文字大小初始化,使1em=10px *****/ body { font-size:62.5%; } /* for IE/Win */ html&g ...

  7. IDataParameter调用存储过程

    public string  GenerateExamePaper(string paperType, string driverID, string MacAddr)         {       ...

  8. 如何在编译内核时添加缺少的固件(随着intel wireless 5100 AGN的 iwlwifi 案例)

    我不知道你在笔记本使用 Linux 在内核编译无线wifi 不能用.我的书"关联 Y450"一个足够的旧书,随着无线网卡: $ lspci | grep Wireless 06:0 ...

  9. 10. 混淆矩阵、总体分类精度、Kappa系数

    一.前言 表征分类精度的指标有很多,其中最常用的就是利用混淆矩阵.总体分类精度以及Kappa系数. 其中混淆矩阵能够很清楚的看到每个地物正确分类的个数以及被错分的类别和个数.但是,混淆矩阵并不能一眼就 ...

  10. windows下adb(android调试桥)基本命令(持续更新。。。)

    前言:刚开始学习android(坚持每天1篇笔记哈^_^),比较实用的命令是adb,所以就先学习这些,主要用真机调试,模拟器用的是genymotion,所以emulator暂时不大需要哈,可以后续再补 ...