2.eclipse新安装第一次启动报错: Java was started but returned exit code=13…… html
3.把maven 项目引入到一个新的eclipse 空间: Project build error:Non-resolvable POM:Could not find… java
6.No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?git
8. -source 1.5 中不支持 diamond 运算符程序员
15.BufferedReader与BufferedWriter读写中文乱码问题github
16.解决Eclipse中没法直接使用sun.misc.BASE64Encoder及sun.misc.BASE64Decoder的问题web
17.针对eclipse调式代码时打断点出现斜杠的解决方法.算法
18.eclipse启动后报错,An error has occurred. See error log for more details.express
19.eclipse自动提示功能没了的解决办法 apache
20.eclipse Ctrl +左键查看源代码提示找不到源windows
22.'version' contains an expression but should be a constant.
有时候在eclipse上使用插件egit向github或者osc上同步代码时,有时候会发现出现cannot open git-upload-pack这个问题。
通常引发这个问题的缘由有两个:1、网络问题,网络访问外网老是会出现各类不稳定因素。2、eclipse中egit插件的配置问题。
第一个问题本身动手解决,就很少说。
第二点:配置问题.
打开eclipse中的windows-->Preferences-->Team-->Git-->Configuration-->User Settings.而后点Add Entry新建一个键值对,输入http.sslVerify=false。
而后肯定 ,就发现git能够正常的pull和push了。
全部的前提是你能用浏览器访问https://github.com/或者https://bitbucket.org/
2.eclipse新安装第一次启动报错: Java was started but returned exit code=13……
这是因为JDK和eclipse和电脑的位数不一致所致,要么都为32位,要么都为64位。
3.把maven 项目引入到一个新的eclipse 空间: Project build error:Non-resolvable POM:Could not find…
只须要从新更新maven的 setting 文件便可。
选中工程右击 -> new -> Source Folder -> 在Folder name 里填写 src/main/resources
手动写入import orgorg.hibernate.cfg.Configuration
再输入部分就会自动提示。
备注:其余类没法自动提示也能够这样解决
6.No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
由于Eclipse默认是运行在JRE上的,而m2eclipse的一些功能要求使用JDK。
解决方法1. Window > Preferences > Java > Installed JREs 添加JDK。
解决方法2.配置Eclipse安装目录的eclipse.ini文件,在-vmargs 参数的前面,添加vm配置指向JDK。例如:
--launcher.appendVmargs
-vm
%JAVA_HOME%\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx512m
这时候须要右击项目——>Java EE Tools——>Generate Deployment Descriptor Stub.而后系统会在src/main/webapp/WEB_INF文件加下建立web.xml文件。错误解决!
固然这个方法是针对web项目的解决方案,若是你的工程不是web项目,那么还有另一种解决方案,就是在pom文件中配置一下failOnMissingWebXml。具体配置以下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </build>
8. -source 1.5 中不支持 diamond 运算符
或者
-source 1.5 中不支持 multi-catch 语句
[ERROR] (请使用 -source 7 或更高版本以启用 multi-catch 语句)
因为历史缘由,maven的核心插件之一compiler默认只支持编译Java1.3,
所以须要配置该插件对java其余版本的支持,
指定Maven的版本,而且指定Maven使用的jdk版本
在pom.xml中修改
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>1.8</source> <target>1.8</target>
<encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build>
如今maven项目很是流行,由于它对jar实行了一个很是方便的管理,咱们能够经过在pom.xml文件中作对应的配置便可将所须要的jar包与本身的项目造成依赖。
可是一般咱们会由于下载jar包速度缓慢而苦恼,这十分影响开发效率,以及程序员的心情,在IDE下载jar时,没法对IDE作任何动做,只能大眼对小眼。
下载jar速度慢究其缘由就是由于不少资源都是国外的,咱们下载一个小文件几乎就跨越了一个太平洋那么远,那么有什么方法可让下载速度变快呢?
其实方法很简单:maven是支持镜像的,咱们能够在maven的conf文件加下的setting.xml文件中找到<mirrors></mirrors>标签
<mirrors> <!-- mirror | Specifies a repository mirror site to use instead of a given repository. The repository that | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used | for inheritance and direct lookup purposes, and must be unique across the set of mirrors. | <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror> --> </mirrors>
在这个标签中加入国内的镜像便可,在这里推荐阿里云的镜像,下载速度有明显的加快
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror>
版本号不支持,如tomcat 7.0和jdk1.8,把tomcat 改成8.0的就行了。
eclipse之因此会出现乱码问题是由于eclipse编辑器选择的编码规则是可变的。通常默认都是UTF-8或者GBK,当从外部导入的一个工程时,若是该工程的编码方式与eclipse中设置的编码方式不一样,就会产生中文的乱码问题,这其中还有几种状况。
若是导入的整个工程的编码方式与eclipse的编码方式有冲突,那么这个工程里全部的中文 都是乱码;若是全部工程的编码方式与eclipse工做空间的编码方式有冲突,那么全部的工程里的中文都有多是乱码。对于eclipse工做空间 ,eclipse会把你改的设置保存在工做空间的设置文件中,对于单个工程的编码方式进行修改,那么eclipse会把编码方式保存在该工程 的.setting文件包里。
因此,要避免中文乱码问题有两个原则:
(1)避免频繁更换工做空间,最好项目从一开始就在一个工做空间中进行,而且最好设置工做空间的编码方式为你平时最常用的或者是公司规定的项目编码方式,这样工程就会使用工做空间的编码方式,避免出现编码不一致的情形;
(2)相同类型的文件尽可能使用相同的编码方式,能够保证相同类型的文件都能使用一致的编码设置;
解决中文乱码问题能够有如下设置方案:
(1)修改工做空间的编码方式:
Window->Preferences->General->Workspace->Text file Encoding
(2)修改单个工程的编码方式:
右击工程,在弹出的菜单中选择最后一项“Properties”
(3)修改一类文件的编码方式:
假设要将js文件编码方式设为UTF-8,则应该
Window->Preferences->General->Content Types
(4)修改单个文件的编码方式:右击要修改的文件,在弹出的菜单中选择最后一项 “Properties”,在打开的新窗口左边的菜单树中选择 Info(即第一个),而后在右面找到 Text file encoding ,选择 “other”,在下拉框中选择须要的编码方式。与修改工程编码方式的方法相似。
ps:在项目过程当中遇到的另一个乱码问题是由于操做系统的字体文件问题,在某些状况下,eclipse所使用的系统中文字体若是被破坏的话,也会致使中文没法显示的问题。因此,若是在上述设置都没法解决问题的时候,应该要考虑一下系统字体文件的问题
2018-06-13 18:40
在pom.xml中添加下面内容便可,同时也能够解决Maven->update project默认jdk的问题
<profiles> <profile> <id>jdk-1.8</id> <!-- 另一种激活方式 --> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile> </profles>
缘由:定义Servlet时注解@WebServlet(“/servlet/ClientRedirect”)已经默认了Servlet路径,在web.xml中继续配置会冲突。
解决方法:注释一个便可
@WebServlet("/servlet/ClientRedirect") public class ClientRedirect extends HttpServlet <!-- ClientRedirect映射 --> <servlet> <servlet-name>client</servlet-name> <servlet-class>servlet.com.ClientRedirect</servlet-class> </servlet> <servlet-mapping> <servlet-name>client</servlet-name> <url-pattern>/servlet/ClientRedirect</url-pattern> </servlet-mapping>
在给eclipse换了高版本的maven插件后,引入jar包报以下的错误:
org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project
解决方法是:help–>install new software, 而后add,添加以下连接,
http://repo1.maven.org/maven2/.m2e/connectors/m2eclipse-mavenarchiver/0.17.2/N/LATEST/
一直下一步就能够,后面提示重启eclipse,而后重启eclipse后,右击项目,点击maven–>update project, 错误就没了
15.BufferedReader与BufferedWriter读写中文乱码问题
正常读写英文时用“”“”没问题
FileReader fre = new FileReader("E:\\TEST\\readText.txt"); FileWriter fwi = new FileWriter("E:\\TEST\\readText2.txt"); BufferedReader bufr = new BufferedReader(fre ); BufferedWriter bufw = new BufferedWriter(fwi ); String line = null; while((line = bufr.readLine()) != null){ bufw.write(line); bufw.newLine(); bufw.flush(); } bufr.close(); bufw.close();
读取中文时须要用GBK或者UTF-8(看源来文件的编码方式) 不然会出现乱码
File fileIn= new File("E:\\TEST\\readText.txt"); File fileOut= new File("E:\\TEST\\readText2.txt"); InputStreamReader inStream = new InputStreamReader(new FileInputStream(fileIn), "GBK"); OutputStreamWriter writerStream = new OutputStreamWriter(new FileOutputStream(fileOut),"GBK"); BufferedReader reader = new BufferedReader(inStream); BufferedWriter writer = new BufferedWriter(writerStream); String lineWriter = null; while ((lineWriter = reader.readLine()) != null) { writer.write(lineWriter); writer.newLine(); writer.flush(); } reader.close(); writer.close();
package com.my.interview; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; public class ReadFile { public static void main(String[] args) { // TODO Auto-generated method stub String pathname ="d:\\test\\test.txt"; File file = new File(pathname); BufferedReader br = null; BufferedWriter bw = null; InputStreamReader isr = null; String string = ""; char[] chs = new char[50]; int len = 0; try { isr = new InputStreamReader(new FileInputStream(file), "GBK"); bw = new BufferedWriter(new FileWriter("d:\\test\\out.txt")); br = new BufferedReader(isr); while ((len = br.read(chs)) != -1) { bw.write(chs, 0, len); System.out.println(new String(chs, 0,len)); } bw.close(); br.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
16.解决Eclipse中没法直接使用sun.misc.BASE64Encoder及sun.misc.BASE64Decoder的问题
一直以来Base64算法的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder来进行的。可是这个类是sun公司的内部方法,并无在Java API中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,能够直接使用。可是在Eclipse和MyEclipse中直接使用,却找不到该类。
第四步:在Resolution后面选择Accessible选项,下面的Rule Pattern配置为**,点击OK便可。
第五步:点击OK
第六步:点击Apply,点击OK,就会看到工做空间会进行从新导入构建。
17.java 导出javadoc中文乱码错误
给 javadoc.exe 加上编码参数就OK。
体的:
在Eclipse里 export 选 JavaDoc,在向导的最后一页的Extra JavaDoc Options 里填上参数便可
好比项目采用的是UTF-8的编码就填:-encoding UTF-8 -charset UTF-8
17.针对eclipse调式代码时打断点出现斜杠的解决方法.
方法一:按快捷键“Ctrl+Alt+B”
方法二:找到菜单栏上的Run,并将Sikp ALL Breakpoints选项取消掉。
18.eclipse启动后报错,An error has occurred. See error log for more details.
方法1. 在"开始"-->"运行"---->打入"cmd"进入命令提示行后,再进入eclipse的安装目录,
而后输入eclipse -clean便可(我用的这个方法 成功了)
方法2.
删除configuration文件夹里除config.ini之外的全部文件,重启Eclipse
试试这两个方法
19.eclipse自动提示功能没了的解决办法
因为从新配置了环境,而且eclipse也是装的4.2的,今天用的时候发现了,竟然没有自动提示功能,也就是当一个对象竟然点不出他的相关方法。后来网上搜索了下,成功的 办法是。
一、我window->Preferences->Java->Editor->content assist
把 Enable auto activation 选项打上勾 :(以下图)
而且在点后面加上.abcdefghijklmnopqrstuvwxyz
此时重启了eclipse还不成功,以后接着第二步骤
二、把该勾选的斗勾选起来
,我本身的eclipse不用重启就成功了。
这里再总结下,首先第一步中的做用是指当你输入一个字母的时候eclipse就会立刻联想相关的单词并显示出来,而且那些联想的单词老是跟着,若是你以为比较烦的话,就改成默认的点号。第二步中才是重点,做用是就是当你用alt+/快捷键的时候会联想出来的。
上图所示的选项会出现屡次提示的问题
Eclipse代码提示两次的解决方案:
20.eclipse Ctrl +左键查看源代码提示找不到源
按住ctrl+鼠标左键,这时会进入到找不到源的页面文件,没关系,点击链接源代码
在此对话框下,选择”External location“。
找到路径为安装java JDK时的路径,关键是在此路径下,找到src.zip,就好了。
咱们新建maven项目,默认jdk版本是1.5,咱们能够修改为咱们想要的版本,有两种方法
1每一个项目修改,在pom.xml添加
<build> <plugins> <!-- compiler插件, 设定JDK版本 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> <showWarnings>true</showWarnings> </configuration> </plugin> </plugins> </build>
2在maven的配置文件增长属性节点
<profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion> </properties> </profile>
22.'version' contains an expression but should be a constant.
package web工程时报 'version' contains an expression but should be a constant这个错误提示,这是由于Maven3 不容许出现version为很是量值的状况。
那么就将版本号改为常量后能够正常打包
父pom文件:
<modelVersion>4.0.0</modelVersion> <groupId>com.wey</groupId> <artifactId>WEY</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging>
子pom文件
<parent> <groupId>com.wey</groupId> <artifactId>WEY</artifactId> <version>0.0.1-SNAPSHOT</version> <relativePath>../WEY/pom.xml</relativePath> </parent> <artifactId>WEY.WebApp</artifactId> <packaging>war</packaging> <name>WEY.WebApp Maven Webapp</name> <url>http://maven.apache.org</url>
<modelVersion>4.0.0</modelVersion> <groupId>com.wey</groupId> <artifactId>WEY</artifactId> <version>0.0.2-SNAPSHOT</version> <packaging>pom</packaging> <parent> <groupId>com.wey</groupId> <artifactId>WEY</artifactId> <version>0.0.2-SNAPSHOT</version> <relativePath>../WEY/pom.xml</relativePath> </parent> <artifactId>WEY.WebApp</artifactId> <packaging>war</packaging> <name>WEY.WebApp Maven Webapp</name> <url>http://maven.apache.org</url>
Maven还会生成一个pom.xml.versionsBackup的备份文件。
提交更新:
>mvn versions:commit
1.maven下载jar包速度慢(解决办法)
如今maven项目很是流行,由于它对jar实行了一个很是方便的管理,咱们能够经过在pom.xml文件中作对应的配置便可将所须要的jar包与本身的项目造成依赖。
可是一般咱们会由于下载jar包速度缓慢而苦恼,这十分影响开发效率,以及程序员的心情,在IDE下载jar时,没法对IDE作任何动做,只能大眼对小眼。
下载jar速度慢究其缘由就是由于不少资源都是国外的,咱们下载一个小文件几乎就跨越了一个太平洋那么远,那么有什么方法可让下载速度变快呢?
其实方法很简单:maven是支持镜像的,咱们能够在maven的conf文件加下的setting.xml文件中找到<mirrors></mirrors>标签
<mirrors> <!-- mirror | Specifies a repository mirror site to use instead of a given repository. The repository that | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used | for inheritance and direct lookup purposes, and must be unique across the set of mirrors. | <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror> --> </mirrors>
在这个标签中加入国内的镜像便可,在这里推荐阿里云的镜像,下载速度有明显的加快
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror>
项目结构:
更名以后即使把全部的子依赖都改好以后依然是以下结构
解决办法,把项目删除从新导入便可。