将所有 jar 文件添加到 java 类路径,除了一些
Add all jar files to java classpath except of some ones
我们知道 class 路径条目 foo/*
作为 classpath
的值,指定名为 foo
的目录中的所有 JAR 文件。现在我在 foo
中有一长串 jar 文件,我想将它们全部添加到 classpath
(通过 JDK 工具的 -cp
选项)除了 "unwanted.jar".
在Git
中,我们可以通过将此规则添加到gitignore
来排除"unwanted.jar":
foo/*
!foo/unwanted.jar
对于 classpath
,除了使用 :
字符手动添加它们或将它们移动到另一个目录之外,是否有快速的方法来执行此操作?
在 Linux 或 OS X 中使用这个将完成工作:
ls -1 $PWD/foo/*.jar | grep -v 'unwanted1.jar\|unwanted2.jar' | tr '\n' ':'
因此您可以将它与java
命令一起使用:
java -cp `ls -1 $PWD/foo/*.jar | grep -v 'unwanted.jar\|unwanted2.jar' | tr '\n' ':'` ...
我们知道 class 路径条目 foo/*
作为 classpath
的值,指定名为 foo
的目录中的所有 JAR 文件。现在我在 foo
中有一长串 jar 文件,我想将它们全部添加到 classpath
(通过 JDK 工具的 -cp
选项)除了 "unwanted.jar".
在Git
中,我们可以通过将此规则添加到gitignore
来排除"unwanted.jar":
foo/*
!foo/unwanted.jar
对于 classpath
,除了使用 :
字符手动添加它们或将它们移动到另一个目录之外,是否有快速的方法来执行此操作?
在 Linux 或 OS X 中使用这个将完成工作:
ls -1 $PWD/foo/*.jar | grep -v 'unwanted1.jar\|unwanted2.jar' | tr '\n' ':'
因此您可以将它与java
命令一起使用:
java -cp `ls -1 $PWD/foo/*.jar | grep -v 'unwanted.jar\|unwanted2.jar' | tr '\n' ':'` ...