如何从控制器[dispatchServlet]或任何java类调用另一个MavenProject的类mainMethod?

时间:2016-08-18 13:22:52

标签: java maven main-method

anyBody请分享知识。

我正面临这个例外

  

抛出java.lang.ClassNotFoundException

来自这个项目A

package com.demo.feed;
@WebServlet("/run")
public class ProjA {
  String[] args={};
  new com.om.demo.ProjB().main(args);
}

我必须调用maven Project B的主要方法

package com.om.demo;
public class ProjB {
    public void main( String[] args )
    {
        hello();
    }
    static void hello() {
            System.out.println("some text");
        }

}

我尝试将项目B添加到项目A中,然后在运行配置中添加了classPath Variables ..

控制台中需要的输出:一些文字

2 个答案:

答案 0 :(得分:0)

在项目A的pom中,您必须将项目B添加为依赖项,然后尝试运行。 在运行之前,您应该确保在项目B上运行mvn clean install

答案 1 :(得分:0)

在包含ProjA类的项目的依赖项部分的pom.xml中,您必须输入:

    <dependency>
        <groupId>com.om.demo</groupId>
        <artifactId>projb</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>

其中projb是包含类ProjB的项目。然后对包含ProjB类的项目执行mvn install