如何使用CLASSPATH / PATH?

时间:2014-10-26 06:00:42

标签: java classpath

首先,我不完全确定这是正确的问题。基本上,我的最终目标是生成一个程序,该程序可以操作一组.docx文件,对每个文件进行小的更改。在我看来,docx4j是完成这一目标的最佳方式。但是,我从未使用过提供的库以外的库。我开始尝试破译手册中提供的所有信息,并开始告诉我需要SLF4J以便让我使用docx4j。

SLF4J手册告诉我 "将文件slf4j-api-1.7.7.jar添加到您的类路径中。" 以及文件 " SLF4J-简单1.7.7.jar"

我继续进入系统>高级系统设置>环境变量和我发现" Path"在系统变量下。在我看来,这是正确的"类路径",所以我添加到它的末尾 C:\ Users \用户diego_000 \桌面\ SLF4J-1.7.7 \ SLF4J-API-1.7.7.jar; C:\用户\ diego_000 \桌面\ SLF4J-1.7.7 \ SLF4J-简单1.7.7.jar; 这似乎是手册告诉我要做的事情,我对Hello World计划(由他们的网站提供)成功运行充满信心。

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
  public static void main(String[] args) {
    Logger logger = LoggerFactory.getLogger(HelloWorld.class);
    logger.info("Hello World");
  }
}

编译时,我发出以下错误:

Compilation completed.  The following files were not compiled:
4 errors found:
File: C:\Users\diego_000\Desktop\Program\HelloWorld.java  [line: 1]
Error: package org.slf4j does not exist
File: C:\Users\diego_000\Desktop\Program\HelloWorld.java  [line: 2]
Error: package org.slf4j does not exist
File: C:\Users\diego_000\Desktop\Program\HelloWorld.java  [line: 6]
Error: cannot find symbol
  symbol:   class Logger
  location: class HelloWorld
File: C:\Users\diego_000\Desktop\Program\HelloWorld.java  [line: 6]
Error: cannot find symbol
  symbol:   variable LoggerFactory
  location: class HelloWorld

由此,我认为我做错了什么。我非常肯定我知道我想要编写的程序背后的伪逻辑,但我不确定如何达到写作的目的。我还没有完成任何研究,但是如果有人能够超越这个问题并指导我完成编写代码点的步骤,我将非常感激。< / p>

谢谢!

2 个答案:

答案 0 :(得分:0)

抱歉,PATH用于可执行文件......最后查看CLASSPATH部分。

http://docs.oracle.com/javase/tutorial/essential/environment/paths.html

答案 1 :(得分:0)

参见this question,最上面的答案显示了如何将jar文件设置为类路径的一部分。 对于javac(编译器版本),格式类似

java -cp "Test.jar;lib/*" my.package.MainClass

javac -classpath .:/home/avh/classes:/usr/local/java/classes ...
javac -cp .:/home/avh/classes:/usr/local/java/classes ...

请注意,在linux / unix上,路径分隔符是:,在windows上引用的字符串和;通常是要走的路。