ClassNotFoundException同时使类的对象出现在其他项目Spring中

时间:2017-06-10 02:20:11

标签: java spring gradle noclassdeffounderror classnotfound

我试图在其他项目中创建一个类对象。

项目A包含TestBean     import java.io.Serializable;

$ nameOfCommand args --options

我正在尝试在项目B中访问它。

项目B的build.gradle

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;

public class TestBean implements Serializable{

    private static final long serialVersionUID = 1L;
    private String name;
    private Integer age;

    @JsonCreator
    public TestBean(@JsonProperty("name") String name, @JsonProperty("age") Integer age) {
        this.name = name;
        this.age = age;
    }

    public TestBean() {
        // TODO Auto-generated constructor stub
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }

}

项目B的settings.gradle

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'war'

repositories{
    jcenter{
        url "http://jcenter.bintray.com/"
    }
}

dependencies {    

    compile project(':projectA')
    runtime ':projectA' 
}

当我尝试通过rest api在ProjectB的某个方法中访问TestBean时,会发现以下错误。

include(':projectA')
project(':projectA').projectDir = new File('/Users/kegupta/Framework/projectA/')

rootProject.name = 'projectA'

任何熟悉错误的人。任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

在ProjectB的类路径中添加.class文件解决了我的问题。

sourceSets {
       main {
        output.resourcesDir = '{Path to projectB}/res'
        output.classesDir   = '{Path to projectB}//bin'
       }
 }