Web应用中由JavaBuildPath(.classpath文件)引起的错误总结 - Go语言中文社区

Web应用中由JavaBuildPath(.classpath文件)引起的错误总结


我们在Build创建的Web应用,尤其是导入已存在的Web项目时,经常会报一些无法找到某个类的错误,比如:

The type javax.XXX.XXX cannot be resolved. It is indirectly referenced from required .class filesXXXXX.java

这往往是项目构建时,找不到类库造成的,此时我们需要进入Java Build Path界面进行配置。

进入方法:右键点击项目名称-->Properties-->Java Build Path或者右键点击项目-->Build Path-->config Build Path进入配置界面:


此时,我们注意查看每个类库名称后面有没有异常的地方,比如红色叹号或提示(Unbound)等(与不同的IDE有关),如下图所示:


此时说明Server Library(服务器类库)未找到,这种情况多见于import已存在的项目时,因为原项目的.classpath文件中的配置信息记录了项目所引用的各种类库,而与本地的IDE环境中并不匹配,所以需要重新对Build path进行配置,即重新配置.classpath文件。那么我们也建议,在团队开发项目做版本库维护时,这个.classpath文件只保存本地,不commit到svn或cvs的服务器库中。

回到上面的错误问题,首先要remove掉报错或异常的类库,然后点击Add Library...,选择本地环境中已有的匹配类库。

比如,上图中的“Server Library[Apache Tomcat v7.0]”说明本地并没有这个名称的服务器类库,remove之后,选择IDE中已配置的tomcat服务器。


点击Add Library...之后,选择Server Runtime,然后在Server Library界面中选择已配置的tomcat服务器:


点击Finish,即完成了Server Library类库的添加。


针对常见的Web项目,需要引入的类库主要包括四项,EAR Library、JRE System Library、Server Runtime、Web App Library。当然根据项目具体需求,还会引入其他类库。如图所示:


其中:

1.EAR Library 是指在项目中..WebRootMETA-INFMANIFEST.MF文件中定义引用的lib,

Manifest-Version: 1.0
Class-Path: 
2.JRE System Library 这个是最基础的类库,即本机配置的jdk类库,当然不同的IDE还集成了很多版本的jdk库,也可以选择引入。

3.Server Runtime,如同jdk,选择IDE集成的服务器或本地已安装的服务器。

4.Web AppLibrary,这个是指引入WebRootWEB-INFlib目录下的类文件。旧的IDE没有这个类包选项时,就需要点击Add Jars...找到项目WebRootWEB-INFlib下的所有类,全部导入到Libraries目录下。




版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Zhanggs/article/details/17161289
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-07 22:48:30
  • 阅读 ( 979 )
  • 分类:Go应用

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢