1、更新不需要权限的项目A,却提示没有权限。
先从Git上更新项目A的代码,提示没有权限。
然后从Git上更新其它项目B的代码,正常。
再更新项目A的代码,正常了。
奇葩问题!
2、Eclipse中,把编辑器和文件进行关联,内容展示更加友好。
网上找到了2种比较类似的方式:
方式1:
Eclipse->Window->Preference->General->Editors->File Associations.
新增*.vm文件,关联编辑器为“HtmlEditor”。
这种方法有个小问题,每打开1个vm文件,就出现一个对话框,太烦人了。
associate file name with the ‘HTML’ content type and retry.
方式2:
Eclipse->Window->Preference->General->Content Types->HTML。
新增文件类型,*.vm。
这种方式,很好,没有多余的对话框提示。
3、Spring属性文件扫描,找不到变量,比如${address}。
其它同事电脑,同样的代码,就没有任何问题。
解决这个问题,在2个方向纠结。
第1种方向,既然属性文件找不到,可能就是.properties没有正确扫描到。
不断尝试这种代码,不断调整模式,不断调整变量的位置,最终解决了。
但是由于会改动xml文件,没有提交。
<context:property-placeholder location="classpath:*.properties" ignore-unresolvable="true" />
第2种方向,优化Eclipse环境。
JDK1.6,JDK1.8,Eclipse版本,在不断的折腾中,最后跑通了。
JDK1.8解压版,Eclipse Neno。
奇葩问题!
4、Javassist版本冲突。
项目用到了内部的服务框架JSF,如果JDK用的是1.8版本,Javassist需要3.19.0-GA。
而其它相关库,只需要Javassist3.12.0版本。
第1种解决办法是,降低JDK版本,安装的JDK用的是1.8,但是项目环境用1.6。
用1.6版本,可以用JDK1.8的兼容版Javase1.6/JDK1.8,也可以直接用纯粹的JDK1.6。
这个时候,我们发现,JDK用解压版就很方便了,与Tomcat和Eclipise的解压版类似,真是绿色环保呀。
第2种解决版本是,配置Javassist高版本的。
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.19.0-GA</version>
</dependency>
最开始,并不知道是Javassist版本冲突,是看控制台的错误堆栈,发现和JSF有关系,然后去看JSF的文档,同时也咨询了下开发维护JSF的相关同事。
5、Jetty运行项目,部分页面提示找不到json的类。
同事同样的环境和代码,是可以的。
检查classpath下和target目录下,lib包都是齐全的。
查看Console控制台,发现打印出来的jar包确实没有,可能是这个导致的,幕后原因未知。
解决办法1:
用Tomcat作为容易运行,一次性Ok。
解决办法2:
用另外一个Jetty插件Run-Jetty-Run1.3.4,一次性OK。
Eclipse Jetty 3.9.0有点小问题。(没能从正面解决这个问题,避之,逃之,o(︶︿︶)o )
解决办法3:pom.xml手动配置,json-lib的库,但是,还是不行哟。
------------------------------------------------------------------------
除了上面的5个重大问题,再总结下经验。
1、解压版,绿色环保,很好。
JDK1.6到JDK1.8、Tomcat、Eclipse等。
2、不少问题,和项目环境有很大关系。
限于能力,搞不清根本原因,只能避开它。
3、同一个问题,存在多种解决方案。
比如第5个问题,json类找不到,可能确实么有,也可能是jar包损坏,还可能是环境问题。
运行容器,Tomcat、2个Jetty,都值得尝试下。

2016年JD工作遇到的问题:1-5,搭建环境和熟悉项目过程中的坑的更多相关文章

  1. 2016年JD工作遇到的问题:6-15,日常小问题

    6.eclipse通过类名,找到所在的jar包. 解决办法:选中class, 快捷键 Ctrl +Shift+ T!!然后-- 之前经常是,根据类名找到对应的源文件,大脑短路,忘了下面的jar包提示. ...

  2. 【2016美团】浏览器和服务器在基于https进行请求链接到数据传输过程中,用到了如下哪些技术

    A.非对称加密技术 B.对称加密技术 C.散列(哈希)算法 D.数字证书 答案:ABCD HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数 ...

  3. 测试或运维工作过程中最常用的几个linux命令?

     大家在测试工作过程中,可能会遇到需要你去服务器修改一些配置文件,譬如说某个字段的值是1 则关联老版本,是0则关联新版本,这时候你可能就需要会下vi的命令操作:或者查看session设置的时长,可能需 ...

  4. How Javascript works (Javascript工作原理) (二) 引擎,运行时,如何在 V8 引擎中书写最优代码的 5 条小技巧

    个人总结: 一个Javascript引擎由一个标准解释程序,或者即时编译器来实现. 解释器(Interpreter): 解释一行,执行一行. 编译器(Compiler): 全部编译成机器码,统一执行. ...

  5. 《浏览器工作原理与实践》<10>作用域链和闭包 :代码中出现相同的变量,JavaScript引擎是如何选择的?

    在上一篇文章中我们讲到了什么是作用域,以及 ES6 是如何通过变量环境和词法环境来同时支持变量提升和块级作用域,在最后我们也提到了如何通过词法环境和变量环境来查找变量,这其中就涉及到作用域链的概念. ...

  6. 之前工作过程中自定义的代码生成器模版,codesimit

    动软代码生成器 和codesmith 5年前的东西,或许有些过时 动软的功能有限,改的也比较简单,已弃. codesmith可定制性强,当时自已改的,提高了团队的整体工作效率. codesmith代码 ...

  7. 工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境

    上文中我们介绍<工作笔记2.软件开发经常使用工具> 从今天開始本文将教大家怎样进行开发?本文以搭建SSH(struts2+hibernate+spring)框架为例,共分为3步: 1)3个 ...

  8. STM32在程序运行过程中关闭定时器重新打开后定时器不工作的问题

    问题:数码管显示程序放在定时TIM2中断函数里面扫描,想要实现在关闭某一功能的时候数码管不显示. 刚开始的想法是开关关闭,关闭定时器时钟:开关打开,打开定时器时钟:(但实验证明再次打开开关时定时器2却 ...

  9. 第一次工作->笔记:在phpstrom2019上搭建phpunit单元测试环境,php环境使用docker

    前言:公司大佬让我开发一个工具,并合并到他的工具包中,使用的是github 说明:这里的php环境使用的是laradock.感兴趣的道友自行查找. 工具:php.phpstrom.phpunit.do ...

随机推荐

  1. May 14th 2017 Week 20th Sunday

    A smooth sea never made a skillful mariner. 平静的海洋练不出熟练的水手. A smooth sea never made a skillful marine ...

  2. linux下使用libxml2实现对xml文件的读取及查询

    由于项目需要,这两天在用C++做XML文件解析的工作.在linux下有个很方便的操作xml文件的库——libxml2,它提供了一套创建和查询xml文件的C语言的接口.这篇博客主要介绍如何使用libxm ...

  3. 如何通过一个SAPGUI屏幕反查这个屏幕对应的事务码

    假设我通过某种跳转方式打开了下图这个SAPGUI的屏幕,但我想搞清楚用哪一个事务码可以直接到达这个屏幕,而不通过繁琐的点击,应该怎么做? 步骤1,点击Order字段,按F1打开帮助界面, 点上图的图标 ...

  4. 使用cmd命令进行运行java(cmd命令输出Hello word)

    使用cmd命令输出Hello word 条件,按照好jdk和jre的环境下,如果没有安装,请安装,简单安装教程链接:https://www.cnblogs.com/weibanggang/p/9392 ...

  5. Git使用(一)

    声明: 第一次使用git,只能保证我的方法可以用,肯定不是最简最好的.以后需要用到更多的用法的时候再来这里更新. 说实话,记下来主要是因为自己记性不好,各种配置记不住,都是当备忘录用的,(囧囧囧囧囧) ...

  6. 网页静态化技术Freemarker

    1.为什么要使用网页静态化技术 网页静态化解决方案在实际开发中运用比较多,例如新闻网站,门户网站中的新闻频道或者是文章类的频道. 对于电商网站的商品详细页来说,至少几百万个商品,每个商品又有大量的信息 ...

  7. .length()与.length与.size()

    .length  .length()属于数组的一个属性和string的一个方法,可以获得该数组或者字符串的长度,返回一个整型数据 .size()属于List泛型对象的一个方法,返回一个list对象中存 ...

  8. 封装全局icon组件 svg (仿造element-ui源码)

    一.引入  svg-sprite-loader 插件 npm install svg-sprite-loader --save-dev vue-cli项目默认情况下会使用 url-loader 对sv ...

  9. datagrid中设置编辑,删除列是否可以访问

    foreach (RepeaterItem Item in rpt_Result.Items) { LinkButton edit = (LinkButton)Item.FindControl(&qu ...

  10. Long数组转String数组

    public static String[] longToString(Long longArray[]) { if (longArray == null || longArray.length &l ...