如何创建 .JAR 来执行特定任务,然后在另一个项目中使用此 JAR?

马哈茂德·萨利赫

例如:我有一个简单的代码,它采用数字数组列表并计算总和。我创建了此代码的 .JAR。现在我的问题是如何在另一个项目中导入这个 JAR 并将数组列表传递给它,然后 JAR 给我结果来重用它??

乔迪

这是一个示例 1- 在目录 com\mycompany\myproject 中创建 Task.java

package com.mycompany.myproject;

import java.util.*;

public interface Task{

  public int sum(List<Integer> list);

}

2- 在目录 com\mycompany\myproject\support 中创建 MyTask.java

package com.mycompany.myproject.support;

import java.util.*;
import com.mycompany.myproject.Task;

public class MyTask implements Task{

 public int sum(List<Integer> list){
  
  int variable = 0;
 
  for(int i: list){
       variable += i;
  }
 
  return variable;
 }

}

3- 使用命令 $javac com/mycompany/myproject/Task.java 和命令 $javac com/mycompany/myproject/support/MyTask.java 编译 .java

4- 使用命令 $jar -cvf task.jar com/mycompany/myproject/Task.class com/mycompany/myproject/support/MyTask.class 创建 .jar 文件(我决定将“任务”作为我的 .jar 文件的名称)

此时您已经创建了 .JAR,您可以在另一个项目中使用它。让我们看看怎么做。

5- 将您的 task.jar 文件放在您定义 CLASSPATH 系统变量的位置

6- 在任何目录中创建 Main.java。

import java.util.*;
import com.mycompany.myproject.*;
import com.mycompany.myproject.support.*;


public class Main{

  public static void main(String arg[]){
    
  //create the implementation you want  
  Task task = new MyTask();
  
  LinkedList<Integer> list = new LinkedList<Integer>();
  
  list.add(8);
  list.add(9);
  list.add(10);
  list.add(2);
  
  int result = task.sum(list);
  
  System.out.println(result);
  
 }

}

7- 用 $javac Main.java 编译 Main.java

8- 将 Main.class(Main.java 的编译结果)放在您定义 CLASSPATH 系统变量的位置。

9- 转到您的 CLASSPATH 目录并执行命令 $java Main

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章