您如何通过CLASSPATH中的google-collections在终端中使用javac编译代码?

尝试在终端中使用javac进行编译的代码示例(在Eclipse中有效)

import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
public class Locate {
   ...
   BiMap<MyFile, Integer> rankingToResult = HashBiMap.create();
   ...
}


在终端中编译

src 288 % javac Locate.java
Locate.java:14: package com.google.common.collect does not exist
import com.google.common.collect.BiMap;
                                ^
Locate.java:15: package com.google.common.collect does not exist
import com.google.common.collect.HashBiMap;
                                ^
Locate.java:153: cannot find symbol
symbol  : class BiMap
location: class Locate
        BiMap<MyFile, Integer> rankingToResult = HashBiMap.create();
        ^
Locate.java:153: cannot find symbol
symbol  : variable HashBiMap
location: class Locate
        BiMap<MyFile, Integer> rankingToResult = HashBiMap.create();
                                                 ^
4 errors


我的CLASSPATH

src 289 % echo $CLASSPATH
/u/1/bin/javaLibraries/google-collect-1.0.jar

最佳答案

  javac -cp /u/1/bin/javaLibraries/google-collect-1.0.jar Locate.java


或者,Java 6中的新功能,只需让它扫描目录

  javac -cp '/u/1/bin/javaLibraries/*' Locate.java

10-06 14:47