我一直在寻找很多线程,但是我无法通过人们给出的建议来实现这一目标。我来自.NET和Visual Studio,所以这是我第一次使用Eclipse和Java。我向您展示了导出和导入自己的库的步骤,因此您可以告诉我我做错了什么,因为我不知道出了什么问题。
这是一个计算器的示例,该库仅具有+,-,*和/运算,而我正试图制作一个.jar文件(如我在.NET中知道的.dll),以便在其他应用程序中使用它我只放了两个数字的项目。步骤:
这是类的代码
软件包LibreriaCalculadora; 公共课Operaciones {
public int sumar(int x,int y){ 返回x + y; }
public int restar(int x,int y){ 返回x-y; }
public int multiplicar(int x,int y){ 返回x * y; }
public int dividir(int x,int y){ 如果(y> 0) 返回x / y; 其他{ System.out.println(“ El divisor no puede ser 0”); 返回0; } } }
好的,现在我按照以下步骤继续将此类导出为.jar文件:
右键单击项目-导出。
导出向导窗口:我选择Java-Jar File。
我选择Java项目并标记其中的文件以将其导出。我也检查了许多教程说的以下选项。这些是图片
完成此步骤后,我可以在选择文件Operaciones.jar的路径中看到:
现在确定导入:
我创建一个Java项目。
我在此Java项目中创建了一个程序包。
我在此包中创建一个类。
右键单击Java项目,然后选择“导入”。
在“导入”向导中,选择“常规”-“存档文件”。
现在,这就是我要在其中使用库的新Java项目中的Package Explorer中看到的内容:
现在我要在其中使用.jar库的Java项目的代码:
package LibreriaCalculadoraDemo;
import java.util.Scanner;
import Operaciones.*;
public class LibreriaCalculadoraDemo {
public static void main(String[] args) {
int x;
int y;
Scanner scanner = new Scanner(System.in);
System.out.println("Inserta el primer operando:");
x = scanner.nextInt();
System.out.println("Inserta el segundo operando:");
y = scanner.nextInt();
}
}
完成所有这些步骤之后,当我写import Operaciones.*;
时我看不到出什么问题了。我也尝试过import Operaciones.jar
,import Operaciones.java
和import Operaciones.class
。但是什么都没有。我给你看我所见的照片:
您能告诉我是否缺少某些步骤或类似内容吗?如果需要,我已经签入了项目的JRE System Library文件夹,并且导入的库都不存在。
谢谢!
答案 0 :(得分:1)
我注意到的是类文件Operaciones在您的文件中有一个包,因此您应该尝试使用import语句给出包的名称。 语法是 导入packagename.classname; 或导入程序包名称。*;
答案 1 :(得分:1)
我宁愿建议您创建maven项目并使用其功能来创建jar文件。您可以按照下面的this教程进行操作。
答案 2 :(得分:0)
最后,我发现了问题所在。
首先,必须创建我在问题开头提到的.jar文件。
这与导入步骤有关。执行以下操作,我成功导入了.jar:
我创建一个名为DemoCalc4的新Java项目。这将在Package Explorer中创建项目和其中的两个元素:JRE系统库和src文件夹。下图:
右键单击src文件夹,然后创建一个新的Package。然后在Package上,右键单击并创建一个新类,在其中编写主要代码。在这里将使用导入的.jar的功能。在我的示例中,我只想写两个数字并对其进行一些算术运算。下图:
右键单击src文件夹,然后单击“导入”。从向导中选择“存档文件”,然后选择.jar文件。这将在Java Project文件夹内创建一个名为.jar Java Project包的包。此时,可以通过在主程序包的内部调用Import
语句将.jar文件中的类方法导入,创建导入的.jar类型的对象并使用其方法。下图:
这是主类的最终代码:
package DemoCalc4;
import java.util.Scanner;
import LibreriaCalculadora.*;
public class DemoCalc4 {
public static void main(String[] args) {
int x;
int y;
Scanner scanner = new Scanner(System.in);
System.out.println("Inserta el primer operando:");
x = scanner.nextInt();
System.out.println("Inserta el segundo operando:");
y = scanner.nextInt();
Operaciones op = new Operaciones();
System.out.println("Suma: " + op.sumar(x, y));
System.out.println("Resta: " + op.restar(x, y));
System.out.println("Division: " + op.dividir(x, y));
System.out.println("Multiplicacion: " + op.multiplicar(x, y));
}
}
这是执行主程序后的结果:
Inserta el primer operando:
5
Inserta el segundo operando:
5
Suma: 10
Resta: 0
Division: 1
Multiplicacion: 25
我希望这对某人有用。很抱歉,如果我的问题不是很清楚,并且感谢所有提出的意见和建议,对我真的很有帮助!