【问题标题】:Gradle gretty plugin:java.lang.NoClassDefFoundError when dependencies with mulit level projectGradle gretty plugin:java.lang.NoClassDefFoundError 当依赖于多级项目时
【发布时间】:2016-04-21 17:16:47
【问题描述】:

当我使用gretty启动我的spring boot项目时,我得到一个NoClassDefFoundError,项目结构如下。ProjectA是一个简单的webapp项目,ProjectB和ProjectC是一个简单的java项目。

projectA:

@RestController
public class AController {

    @RequestMapping(value = "/print",method = RequestMethod.GET)
    public String print(){
        new BClass().print();
        return this.getClass().getName();
    }
}

apply plugin: 'org.akhikhl.gretty'

gretty{
    springBoot = true
    port = 8080
    contextPath = '/'
    servletContainer = 'tomcat8'
    managedClassReload = true
}

dependencies{

    compile "org.springframework.boot:spring-boot-starter-web"

    compile project(":projectB")

}

ProjectB:

public class BClass {
    public void print(){
        new CClass().print();
        System.out.println(this.getClass().getName());
    }
}

dependencies{
    compile project(":projectC")
}

ProjectC:

public class CClass {
    public void print(){
        System.out.println(this.getClass().getName());
    }
}

启动命令:

gradle :projectA:appRun

然后访问:http://localhost:8080/print 我得到了 java.lang.NoClassDefFoundError: com/project/c/CClass 它似乎是 ProjectA 的简洁引用 ProjectC 的类,很遗憾如何不将 ProjectC 包含到类路径中。 我该怎么做呢?谢谢

gretty 插件 :https://github.com/akhikhl/gretty

【问题讨论】:

    标签: gradle gretty


    【解决方案1】:

    我真的无能为力,但我可以确认我遇到了同样的问题。我也和你一样使用 Spring Boot,想知道这是否是问题的一部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 2015-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-07
      相关资源
      最近更新 更多