我试图把我的头包裹在java classpath和.jar文件中,并试图将逻辑放在一个类中并从另一个类引用该类。
我目前的目录结构是:
C:\TEMP\StringOps
C:\TEMP\StringOps\StringOperations.java
C:\TEMP\StringOps\StringOperationsDriver.java
我有两个班级:
package StringOps;
import java.lang.StringBuilder;
// To compile: javac StringOps/StringOperations.java
public class StringOperations {
private String data;
public StringOperations(String input) {
data = input;
}
public String ReverseString() {
return new StringBuilder(data).reverse().toString();
}
}
我的第二堂课看起来像是:
package StringOps;
class StringOperationsDriver {
public static void main(String[] args) {
StringOperations sop = new StringOperations("hello world");
System.out.println(sop.ReverseString());
}
}
我可以通过以下方式正确编译代码:
C:\TEMP>javac StringOps\StringOperationsDriver.java
但是当我尝试运行代码时:
C:\TEMP\java -cp . StringOps.StringOperationsDriver
我正试着把头包裹起来,然后在我明白这一点之后转向清单文件。我试过四处寻找:
Java classpath and package problems - referencing multiple jar files
这与我遇到的问题类似,但是来自该网址的以下命令对我不起作用。我在同一目录C:\ TEMP。
中也有一个.jar文件理想情况下,我正在寻找的是一种将代码放入StringOperations.java,编译代码并将其放入jar文件的方法。然后从StringOperationsDriver.java访问.jar文件的内容。但由于最后一个网址对我不起作用,我想我会退后一步,试试看它是否有效。