`
kingquake21
  • 浏览: 267868 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

单独运行JAR包时的类路径问题

    博客分类:
  • Java
阅读更多

下面的代码运行后可以生成一个system.properties文件,其中有一行java.class.path=[......]。
如果是将此类打入jar包
systemproperty.jar 中执行,java -jar systemproperty.jar,生成的文件中java.class.path=systemproperty.jar
如果是直接运行此类java SystemProperty,生成的文件中java.class.path=.;C\:\\Program Files\\Java\\jdk1.5.0_09\\lib\\tools.jar;C\:\\Program Files\\Java\\jdk1.5.0_09\\lib\\dt.jar;

参考【http://www-128.ibm.com/developerworks/cn/java/j-jar/index.html 】:
一个可执行的 JAR 必须通过 menifest 文件的头引用它所需要的所有其他从属 JAR。如果使用了 -jar 选项,那么环境变量 CLASSPATH 和在命令行中指定的所有类路径都被 JVM 所忽略。
The JAR archive specified by the -jar option, which overrides all other values. If this option is used, all user classes must come from the specified archive.

import java.util.Properties;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
public class SystemProperty
{
public static void main(String[] args){
Properties properties=System.getProperties();
try
{
OutputStreamfos=new FileOutputStream("system.properties");
properties.store(fos,"Comment!");
}
catch(FileNotFoundExceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
catch(IOExceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
 

 

分享到:
评论

相关推荐

    maven打可执行JAR包

    - 在运行JAR时,如果有外部配置文件或其他资源文件,需要确保这些文件与JAR在同一目录下或通过类路径正确引用。 - 如果你的项目有多个模块,可能需要调整构建过程,确保正确处理模块间的依赖关系。 通过以上两种...

    Eclipse打包成JAR包读取外部JAR包和外部配置文件

    如果外部JAR包中包含类,这些类需要在运行时被正确加载。Eclipse默认使用`URLClassLoader`,它可以处理这种目录结构。但如果你遇到类找不到的错误,可能需要自定义类加载器,或者使用像`Class-Path`属性这样的方法来...

    Eclipse 打可执行JAR包

    一、创建可执行JAR包的背景与意义 在Java中,JAR(Java Archive)文件是一种归档格式,用于集合多个类文件、资源文件以及元数据。可执行JAR是其中一种特殊类型的JAR,包含了主类信息,可以直接通过`java -jar`命令...

    Jar包 Jar包

    1. 引入Jar包:将该Jar包添加到项目的类路径中,以便在运行时能够找到并加载相关类。 2. 创建数据集:定义一个数据集,表示饼图的各个部分及其对应的值。这可以是`PieDataset`接口的一个实现,如`DefaultPieDataset...

    lib中的jar lib中的jar包

    - **构建路径**:在IDE如Eclipse、IntelliJ IDEA中,可以将`lib`目录设置为项目的类路径,使得其中的`jar`包被自动引入。 - **命令行执行**:使用`java -cp`或`-classpath`参数指定`jar`包的位置,让JVM知道如何找到...

    jar包2jar包2jar包2jar包2jar包2

    3. **运行jar**:使用`java -jar`命令可以执行jar包中的主类,manifest文件中的Main-Class属性指定启动类。 4. **依赖管理**:如果一个jar包依赖于其他jar包,需要确保它们都在类路径(classpath)中。现代构建工具...

    jar打包,jar打包

    它不仅能够减少文件的数量和便于传输,还支持类路径依赖管理和版本控制等功能。JAR文件的核心优势在于其能够作为一个独立的单元进行部署,同时包含了运行所需的所有依赖。 #### 二、Java Manifest文件详解 ...

    Javaweb开发JAR包

    这些JAR包会被部署到应用服务器的类路径下,以便于应用运行时能够找到并加载所需的类。 4. **Web-INF目录结构** 对于JavaWeb应用,JAR包经常被放在`WEB-INF/lib`目录下。这个目录下的JAR包会被Web容器自动添加到...

    spring-boot 所有jar包

    6. **独立运行的Spring应用**:Spring Boot应用通常被打包为可执行的jar,可以直接运行,无需单独的Java应用服务器。 7. **零配置(Zero Configuration)**:Spring Boot推崇约定优于配置的理念,许多默认配置可以...

    包含mail、jar包

    开发人员在自己的项目中添加这些JAR到类路径(classpath)中,就可以使用JavaMail API提供的功能,而无需自己编写底层的邮件处理代码。 总的来说,`mail`和`jar`包在Java开发中扮演着关键角色。JavaMail API简化了...

    ext的jar包ext的jar包ext的jar包

    4. **Classpath Configuration**:使用"ext"的jar包时,正确配置类路径(classpath)至关重要。如果这个jar包包含公共API,那么它需要被正确添加到运行时的类路径中,以便其他程序可以引用它的类和方法。 5. **API ...

    添加的jar包

    它们可以从远程仓库自动下载所需的JAR,并在构建时自动将其包含在最终的可执行文件中,避免了手动管理类路径的繁琐工作。 在实际开发中,了解如何正确管理和使用JAR包对于提升项目效率至关重要。同时,注意JAR包...

    自己写的可在未安装jdk的电脑上,通过.bat运行的jar包

    - **.classpath**:这是Eclipse项目的类路径配置文件,它定义了项目中各个源代码目录、库和外部JAR文件的位置,帮助Eclipse知道如何编译和运行项目。 - **.project**:这是Eclipse项目的配置文件,包含了项目设置,...

    javax.servlet.jar包下载

    当您在项目中遇到“找不到类”或“类路径异常”与Servlet相关的错误时,可能是因为缺少了这个jar包。 1. **Servlet简介** Servlet是Java中用于扩展服务器功能的接口和类的集合。它们是Java EE的一部分,允许开发者...

    Fat jar打包Java工具

    这种方式主要是为了整合所有项目的依赖库到一个单独的JAR文件中,使得运行时无需额外配置类路径。在Java项目中,特别是当我们想要分发可独立运行的程序时,Fat jar变得非常实用,因为它包含了运行程序所需的所有类和...

    jar包可用作编译器。

    7. **类路径管理**: JAR文件也可以用来设置Java的类路径,使得程序在运行时能找到所需的类和资源。在命令行中,可以使用 `-cp` 或 `-classpath` 参数指定JAR文件。 8. **服务提供者接口(SPI)**: Java的SPI机制...

    家教网 jar包 database

    为了成功运行家教网项目,你需要将这些jar包添加到你的项目类路径(ClassPath)中,然后配置Hibernate的XML配置文件(如hibernate.cfg.xml),设置数据库连接参数。导入数据库备份时,你可以使用MySQL客户端工具(如...

    打包hibernate 用到的一些jar包

    标题中的“打包hibernate 用到的一些jar包”指的是在使用Hibernate框架进行Java应用程序开发时,需要将一系列依赖的JAR(Java Archive)文件集合在一起,以便于项目的构建和运行。Hibernate是一个强大的对象关系映射...

    myeclipse打包jar文件包含第三方jar包(文档+工具)

    `FatJar`是一个第三方插件,适用于`Eclipse`和`MyEclipse`,它的主要功能是帮助开发者将所有项目依赖的库文件(即第三方JAR包)打包进最终的可执行JAR中。这样,当用户运行这个单一的JAR文件时,不需要额外配置类...

    kettle连接oracle所需jar包

    - 如果你使用的是Spoon(Kettle的图形化开发工具),还需要将JAR文件复制到Spoon的类路径下,通常是:`安装目录>/plugins/pentaho-kettle/plugins/kettle-core/lib/` 和 `安装目录>/plugins/pentaho-kettle/plugins...

Global site tag (gtag.js) - Google Analytics