如何让Eclipse / SparkJava / Maven一起工作?

时间:2014-04-10 17:57:36

标签: java eclipse maven spark-java

我已经通过apt-get下载了maven,我在Eclipse上安装了maven集成。 我有pom.xml与spark依赖集。我的项目编译,当我点击运行时,我收到此输出:

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building mc437-web 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.105s
[INFO] Finished at: Thu Apr 10 10:56:15 PDT 2014
[INFO] Final Memory: 6M/59M
[INFO] ------------------------------------------------------------------------

我需要在localhost上运行我的应用程序吗?我必须在Maven上设定什么目标/个人资料?

3 个答案:

答案 0 :(得分:1)

您需要一个带有main方法的类,它定义了一些路由。然后,您可以右键单击并运行该类,或从命令行运行它。

public class App 
{
    public static void main(String[] args) {

      get(new Route("/hello") {
         @Override
         public Object handle(Request request, Response response) {
            return "Hello World!";
         }
      });
}

答案 1 :(得分:0)

如果您想使用包含所有依赖项的Maven构建Spark项目(例如,构建一个jar文件),则可以使用Apache Maven Assembly Plugin。所以,你可以添加到pom.xml这样的插件定义:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-assembly-plugin</artifactId>
  <executions>
    <execution>
      <goals>
        <goal>attached</goal>
      </goals>
      <phase>package</phase>
      <configuration>
        <finalName>%JAR_FILE_NAME%</finalName>
        <descriptorRefs>
          <descriptorRef>%JAR_FILE_NAME_DESCIPTOR%</descriptorRef>
        </descriptorRefs>
        <archive>
          <manifest>
            <mainClass>%FULL_MAIN_CLASS_NAME%</mainClass>
          </manifest>
        </archive>
      </configuration>
    </execution>
  </executions>
</plugin>

为了运行你的项目,你可以运行jar:

java -jar %JAR_NAME%

至于与Eclipse的集成 - 您可以在命令行中使用 mvn eclipse:eclipse ,或者在Eclipse中使用Maven插件,并在菜单中选择&#34;文件 - &gt;进口&#34 ;.请参阅this question

中的详细信息

答案 2 :(得分:0)

使用SparkJava v2.5.5,代码如下所示:

public class App {
    public static void main(String[] args) {

       Spark.get("/hello", new Route() {
           public Object handle(Request request, Response response) {
               return "Hello World!";
           }
       });
}

要测试,请运行java应用程序并在浏览器http://localhost:4567/hello

中调用