Gradle 从svn 中检出的父项目后处理配置【我】 及 Failed to parse configuration class异常...

本文主要是介绍Gradle 从svn 中检出的父项目后处理配置【我】 及 Failed to parse configuration class异常...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

前提:

一个用gradle配置的 类似maven的聚合项目的项目,然后它在svn上就是一个父工程的目录。

 

检出方式:

在eclipse中,直接用svn资源库检出 父项目 的目录。

 

然后,在父项目下面的settings.gradle文件上右键,

Gradle——Refresh Gradle Project

这样Eclipse包管理器中的单一parent目录项目就变成正常的多个子项目了。

 

--------------------

注意:

 

如果按照上面的方法不管用(eclipse报错,或者没有反应即项目没有变化),请如下操作:

 处理方法1:

1.在eclipse中全局搜索 :connection.gradle.distribution,会找到项目下对应的 \.settings 目录下的 文件 org.eclipse.buildship.core.prefs

也可以直接到工作空间下的项目下的 .settings目录下去找。

2.修改  connection.gradle.distribution = 后面的值中的路径为 Eclipse环境中配置的本地gradle目录地址(这个地址可能是从svn中检出的项目的原配置,并不和本地gradle环境一致)

3.再重复执行:在父项目下面的settings.gradle文件上右键,Gradle——Refresh Gradle Project

 

处理方法2:

打开Eclipse的 Problems 窗口,找到其中的错误,全局搜上面的错误,或者搜索:

connection.gradle.distribution

同样会找到上面的文件,只要把报错的这行:

connection.gradle.distribution=GRADLE_DISTRIBUTION(LOCAL_INSTALLATION(E\:\\Utils\\gradle-4.6))

注释掉即可。

重新Refresh Gradle Project 后其会自动变成

connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER)

同时项目构建成功。

 

 =================

 

gradle项目使用及启动

用gradle构建的项目其实和maven一样,只是在 更新或修改 build.gradle 文件后,需要 在项目右键执行 Gradle——Refresh Gradle Project,是构建文件作用在项目上。其他可以和普通web项目一样操作,比如,启动,可以直接 add 到eclipse集成的Tomcat下来启动。

 ====================

更换Eclipse 2019版本后,从SVN检出项目,按照上面方法配置,启动时发现报错:

 主要是说找不到某些类的 .class 文件,所以spring 无法实例化

 

错误如下:
org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [ xxximpl.class  找不到

 

发现报错的 bean都是某个接口项目下的实现类(说找不到对应的 .class 文件),而那个接口是以一个 jar 项目的形式单独存在的,在本项目的 build.gradle 配置文件中如下依赖的:

 

dependencies {
   compile project(":crmCust-api")

 

在Eclipse的包管理器界面都是没问题的:

最下面也有这个依赖,但是部署到Tomcat中启动时就说找不到对应的 .class 文件

 

想到是新Eclipse环境的问题,项目右键,build path,config bulidpath,Libraries 查看各项,未见明显异常错误。

然后百度一番,

再次项目右键,properties,选择左侧的 Deployment Assembly

在弹出的窗口中,发现我们依赖的的接口项目 crmCust-api 在窗口下部有报错叉号及提示错误的标记,

选中 上面表格中的 crmCust-api 然后,点右边的 Remove 移除,再点右边的add重新添加进来,故障排除。

 

启发:

怀疑项目构建问题,

除了在项目右键,build path,config bulidpath 查看异常外,

还可以项目右键,properties,选择左侧的 Deployment Assembly,查看右侧是否异常

 ===================================

 

转载于:https://www.cnblogs.com/libin6505/p/10556864.html

这篇关于Gradle 从svn 中检出的父项目后处理配置【我】 及 Failed to parse configuration class异常...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/633542

相关文章

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

用Microsoft.Extensions.Hosting 管理WPF项目.

首先引入必要的包: <ItemGroup><PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2" /><PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" /><PackageReference Include="Serilog

eclipse运行springboot项目,找不到主类

解决办法尝试了很多种,下载sts压缩包行不通。最后解决办法如图: help--->Eclipse Marketplace--->Popular--->找到Spring Tools 3---->Installed。

WIN8重置Eclipse的SVN帐号密码

将C:\Users\用户名\AppData\Roaming\Subversion\auth\svn.simple目录下的文件删除,然后在Eclipse里面就需要重新输入帐号密码了。

IDEA配置Tomcat远程调试

因为不想把本地的Tomcat配置改乱或者多人开发项目想测试,本文主要是记录一下,IDEA使用Tomcat远程调试的配置过程,免得一段时间不去配置到时候忘记(毕竟这次是因为忘了,所以才打算记录的…) 首先在catalina.sh添加以下内容 JAVA_OPTS="-Dcom.sun.management.jmxremote=-Dcom.sun.management.jmxremote.port

vue项目集成CanvasEditor实现Word在线编辑器

CanvasEditor实现Word在线编辑器 官网文档:https://hufe.club/canvas-editor-docs/guide/schema.html 源码地址:https://github.com/Hufe921/canvas-editor 前提声明: 由于CanvasEditor目前不支持vue、react 等框架开箱即用版,所以需要我们去Git下载源码,拿到其中两个主

React+TS前台项目实战(十七)-- 全局常用组件Dropdown封装

文章目录 前言Dropdown组件1. 功能分析2. 代码+详细注释3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲全局Dropdown组件封装,可根据UI设计师要求自定义修改。 Dropdown组件 1. 功能分析 (1)通过position属性,可以控制下拉选项的位置 (2)通过传入width属性, 可以自定义下拉选项的宽度 (3)通过传入classN

Steam邮件推送内容有哪些?配置教程详解!

Steam邮件推送功能是否安全?如何个性化邮件推送内容? Steam作为全球最大的数字游戏分发平台之一,不仅提供了海量的游戏资源,还通过邮件推送为用户提供最新的游戏信息、促销活动和个性化推荐。AokSend将详细介绍Steam邮件推送的主要内容。 Steam邮件推送:促销优惠 每当平台举办大型促销活动,如夏季促销、冬季促销、黑色星期五等,用户都会收到邮件通知。这些邮件详细列出了打折游戏、

vue3项目将所有访问后端springboot的接口统一管理带跨域

vue3项目将所有访问后端springboot的接口统一管理带跨域 一、前言1.安装Axios2.创建Axios实例3.创建API服务文件4.在组件中使用API服务 二、跨域三、总结 一、前言 在Vue 3项目中,统一管理所有访问后端Spring Boot接口的最佳实践是创建一个专门的API服务层。这可以让你的代码更加模块化、可维护和集中管理。你可以使用Axios库作为HTT