文档章节

使用notepad++(非IDE)编写java如何引用第三方jar

不最醉不龟归
 不最醉不龟归
发布于 2017/09/02 21:10
字数 680
阅读 1K
收藏 0

精选30+云产品,助力企业轻松上云!>>>

本文永久地址:https://my.oschina.net/bysu/blog/1527992

使用notepad++(非IDE)编写java如何引用第三方jar,网上看了很多方法都不行,于是自己摸索了一会,作如下记录。

实现步骤:

1.先自己创建一个jar;

2.再在java程序中引用jar包;

现在先来个简单的java源码吧~然后把这个java编译成class,最后打包成jar。

package com.by.su;

public class HelloJar{
	public static void printMethod(){
		System.out.println("Hi,I am jar!");
	}
}

需要注意的地方:

上面文件的目录:需要在引用的源文件同目录下创建文件夹com,在com文件夹目录下创建by文件夹...最终文件目录./com/by/su/HelloJar.java。要不然会报如下错误:

ImportJar.java:1: 错误: 程序包com.by.su不存在
import com.by.su.HelloJar;
                ^
ImportJar.java:5: 错误: 无法访问HelloJar
                HelloJar.printMethod();
                ^
  错误的类文件: .\HelloJar.class
    类文件包含错误的类: com.by.su.HelloJar
    请删除该文件或确保该文件位于正确的类路径子目录中。
2 个错误

在su文件夹中打开cmd命令窗口,(可以按着shift键,然后鼠标右键单击su文件夹中空白的地方,在弹出框中选择“在此处打开命令窗口”即可)输入如下命令,对HelloJar.java进行编译

javac HelloJar.java

目录中多了一个HelloJar.class文件,在同一个窗口(新开cmd窗口也可以,不过需要确认相关文件的路径)输入如下命令进行jar文件的创建

jar -cvf hi.jar HelloJar.class

执行之后,在文件夹su中又新增了一个jar文件。其中hi.jar就是你需要生成的jar包,这个文件名随意(特殊字符不知道行不行,有兴趣有时间可以自己试试,建议好钢还是用在刀刃上吧)。如若以上命令参数不懂的话,请自行搜索引擎。

现在有了第三方的jar包。那么我们在我们的java程序中引用它吧!

import com.by.su.HelloJar;

public class ImportJar{
	public static void main(String[] args){
		HelloJar.printMethod();
	}
}

在ImportJar目录中打开cmd命令窗口(可以按着shift键,然后鼠标右键单击su文件夹中空白的地方,在弹出框中选择“在此处打开命令窗口”即可),执行如下命令:

javac ImportJar.java
java ImportJar

就能看到输出

Hi,I am jar!

更正:刚刚使用中发现其实在相应目录中不是jar起作用,是其class在起作用。也就是说把jar包解压,然后把其中的class文件放到对应目录中即可。--2017年9月2日22:18:40

PS:eclipse中选中类,按F3可查看该类对应的jar包

 

不最醉不龟归
粉丝 29
博文 466
码字总数 489094
作品 0
深圳
程序员
私信 提问
加载中
请先登录后再评论。
java主要编程工具

工欲善其事必先利其器,要想学好Java编程这门语言,选择一款好用顺手的开发工具是必不可少的。 要想全面了解java开发工具,我们首先需要先了解一下java程序的开发过程,通过这个过程我们能够...

osc_axql7nqi
2018/12/29
4
0
java项目打成jar包时引用了第三方jar ---linux 运行

java项目打成jar包时引用了第三方jar,此时我们该如何解决呢 Web项目做多了,反而对单纯的java项目陌生了,今天我们在开发项目的过程中,碰到一个这样的需求:需要将java项目放到linux系统上...

osc_gq0nahbo
2018/04/28
21
0
新手学Java编程语言怎么入门?

新手学java编程语言怎么入门?掌握语言基础是第一步,了解java基础知识,Java关键字、核心概念或者基本编码技术。掌握操作符、控制执行流程、访问权限控制、复用类、多态、接口、字符串、泛型...

老鬼灬Java开发
04/11
0
0
java -jar参数运行方式设置classpath

转载自:https://www.cnblogs.com/aggavara/archive/2012/11/16/2773246.html 当用java -jar yourJarExe.jar来运行一个经过打包的应用程序的时候,你会发现如何设置-classpath参数应用程序都找...

osc_rzibnjco
2018/08/04
4
0
spring boot agent NoSuchClassFound

在使用javaagent+javassist作agent监控Spring Boot项目时,在IDE中正常运行,但是打包成jar之后则发生nosuchclassfound错误,下面对此产生的原因做一些解析。 1. JVM类加载 JVM类采用的是双亲...

xiaomin0322
2019/12/05
66
0

没有更多内容

加载失败,请刷新页面

加载更多

FusionConputer热迁移过程记录

一、迁移原因   云平台集群内存资源不足,已超过设定阈值,内存资源已紧急告警。 二、解决思路   启用新集群,并将老集群中部分虚拟机热迁移至新集群 三、迁移的前提条件   1.被迁移虚...

osc_flwkfqx5
45分钟前
13
0
使用 ServerLess 实现云原生

笔者有幸经历了 IaaS(OS)、CaaS(Container),在这两年又听到了 FaaS(Funtion),这也是运维开发领域里的第三个阶段了吧,今天我将从一个不懂得开发的系统工程师视角以及结合之前的几篇系...

osc_t59f3rc0
47分钟前
18
0
作为软件测试的前辈你能不能给迷茫中的我一点建议?

一、为什么迷茫? 假如前面迷雾一片,作为司机的你,敢踩油门往前冲吗? 大多数人是不敢的。 因为你看不清自己的位置和发展的方向。 同理,一切对未来的恐慌、畏惧、纠结、迷茫,也是因为你看...

osc_auwur47t
49分钟前
12
0
神经机器翻译的直观解释

作者|Renu Khandelwal 编译|VK 来源|Towards Data Science 什么是神经机器翻译? 神经机器翻译是一种将一种语言翻译成另一种语言的技术。一个例子是把英语转换成印地语。让我们想想,如果你在...

osc_u61lmlkv
50分钟前
0
0
用Tableau实现动画数据可视化

作者|PRANAV DAR 编译|VK 来源|Analytics Vidhya 概述 动画可视化是一种艺术,它很容易在Tableau中创造出来 我们将在这里使用开源数据集,并在Tableau中创建自己的动画可视化 介绍 我是动画视...

osc_1oqjcug0
50分钟前
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部