我正在尝试使用 google voice 的 java api(可在此处获取: http://code.google.com/p/google-voice-java/ )、google-voice-java-1.6.jar 和 json.jar
我的程序找不到要导入的 .jar 文件。我已确保我的类路径指向包含 jar 文件的目录。
我下面的代码不使用任何 GV 类,我只是尝试导入它们。我究竟做错了什么?标准 java 类导入良好。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
import gvjava.org.json.JSONException;
import gvjava.org.json.JSONObject;
import com.techventus.server.voice.Voice;
import com.techventus.server.voice.datatypes.AllSettings;
import com.techventus.server.voice.datatypes.DisabledForwardingId;
import com.techventus.server.voice.datatypes.Group;
import com.techventus.server.voice.datatypes.Phone;
import com.techventus.server.voice.datatypes.Greeting;
import com.techventus.server.voice.exception.CaptchaRequiredException;
import com.techventus.server.voice.util.ParsingUtil;
@SuppressWarnings("deprecation")
class hello {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static String pass = null;
public static void main(String args[])
{
System.out.println("Enter Your name:");
{
try {
pass = br.readLine(); }
catch (IOException ioe) {
System.out.println("IO error trying to read input!");
System.exit(1); }
System.out.println(pass);
}
}
}
我在 debian sid 下使用 java 6。我也在命令行工作。我将类路径设置为 .bashrc 中的环境变量。我的 jar 位于目录 ~/java/classes 中。我的源代码在 ~/java
java $ javac -cp ./classes/* hello.java
javac: invalid flag: ./classes/json.jar
Usage: javac <options> <source files>
如果我注释掉 json.jar 中的两个导入,代码运行正常,所以感谢所有的类路径提示。
使用 -cp "./classes/*"修复有效。
最佳答案
您是否使用任何 IDE 或在命令行编译程序?无论如何,将类路径设置为包含 JAR 文件的目录是行不通的。您必须确保您的类路径单独列出所有 JAR 文件。例如
java -cp your/dir/of/jars pkg.Main // won't work in Java 5 and below
java -cp your/dir/of/jars/first.jar;your/dir/of/jars/second.jar pkg.Main // works
如果您使用的是 Java 6,则可以使用类路径通配符来解决该问题。
java -cp your/dir/of/jars/* pkg.Main // works in Java 6
相关主题:How to use a wildcard in the classpath to add multiple jars?
关于java - 导入java类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3488045/