java调用com接口jar包,java调用外部jar包

发布时间:2022-11-17

本文目录一览:

  1. 怎么在java项目中调自定义的jar包中的类?
  2. java导入jar包之后怎么调用
  3. java怎么调用一个jar包里的另一个jar包的class,新手求指教,谢谢
  4. 求E语言通过java支持库调用jar包时参数传递教程
  5. jar包的使用

怎么在java项目中调自定义的jar包中的类?

在Java项目中调用自定义的JAR包需要两个步骤:

  1. 导入JAR包:将需要使用的JAR包导入到项目中。如果在导入的JAR包前看到一个奶瓶状的图标,那么代表可以正常使用该JAR包了。
  2. 导入相关包信息:在类中使用到自定义的JAR包中的内容时,需要导入相关的包信息。一般在开发时,我们自定义的JAR包大多数为工具包,即直接使用对象.方法的形式来使用JAR包中的内容。

java导入jar包之后怎么调用

首先你得知道你的JAR包里有哪些类,这些类在哪个包下。查看方式:JAR包可以用RAR压缩包的方式打开看的。 例如你有AAA.jar,该JAR里面有com文件夹,com文件夹里面有一个test文件夹,test文件夹里面有Test.java这个类,那么你在使用时可以:

import com.test.Test;

也可以使用通配符:

import com.test.*;

java怎么调用一个jar包里的另一个jar包的class,新手求指教,谢谢

可以使用反射来实现。 示例代码:

A r = new A();
Class temp = r.getClass();
System.out.println("反射类中所有公有的属性");
Field[] fb = temp.getFields();

求E语言通过java支持库调用jar包时参数传递教程

Java加载JAR文件并调用JAR文件当中有参数和返回值的方法。

示例代码

1. 创建一个JAR文件(hello.jar

package org.lele.fatpanda;
public class Util {
    public static String myName;
    public static void getVersion() {
        System.out.println("java version: " + System.getProperty("java.version"));
    }
    public static void setTmpName(String name) {
        myName = name;
        System.out.println("Set Tmp Name Succeed and the name is : " + myName);
    }
    public static String getName(String prefix) {
        return prefix + "lele";
    }
    public static String test(String i1, int i2) {
        return i1 + i2;
    }
}

2. 动态加载并调用JAR文件中的方法

package com.xiyoulele.wh;
import java.io.File;
import java.lang.reflect.Method;
import java.net.URL;
import java.net.URLClassLoader;
public class Main {
    public static void main(String[] args) {
        URL[] urls = new URL[]{};
        MyClassLoader classLoader = new MyClassLoader(urls, null);
        try {
            classLoader.addJar(new File("c:\\hello.jar").toURI().toURL());
            Class<?> clazz = classLoader.loadClass("org.lele.fatpanda.Util");
            // 调用 getName 方法
            Class<?>[] typeA = new Class[1];
            typeA[0] = String.class;
            Object[] objsA = new Object[1];
            objsA[0] = "xiyou";
            Method method = clazz.getMethod("getName", typeA);
            String result = method.invoke(clazz, objsA).toString();
            System.out.println(result);
            // 调用 test 方法
            Class<?>[] typesB = new Class[2];
            typesB[0] = String.class;
            typesB[1] = Integer.TYPE;
            Object[] ObjsB = new Object[2];
            ObjsB[0] = "ZT";
            ObjsB[1] = 520;
            Method newMethod = clazz.getMethod("test", typesB);
            String res = newMethod.invoke(clazz.newInstance(), ObjsB).toString();
            System.out.println(res);
            // 调用 setTmpName 方法
            Class<?>[] typesC = new Class[1];
            typesC[0] = String.class;
            Object[] objsC = new Object[1];
            objsC[0] = "xiyoulele";
            Method methodC = clazz.getMethod("setTmpName", typesC);
            methodC.invoke(clazz.newInstance(), objsC);
            // 调用 getVersion 方法
            Method methodD = clazz.getDeclaredMethod("getVersion");
            methodD.invoke(clazz.newInstance());
            classLoader.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    static class MyClassLoader extends URLClassLoader {
        public MyClassLoader(URL[] urls) {
            super(urls);
        }
        public MyClassLoader(URL[] urls, ClassLoader parent) {
            super(urls, parent);
        }
        public void addJar(URL url) {
            this.addURL(url);
        }
    }
}

jar包的使用

导入到工程即可使用了。

使用步骤:

  1. 在程序目录下,创建一个文件夹,名称随便叫,我们这里叫 Lib
  2. 将第三方 JAR 包复制到该目录下。
  3. 右键工程。
  4. 选择 Build Path
  5. 点击 Java Build Path,选择 Libraries
  6. 在右边的按钮中点击 Add JARs
  7. 选择 Lib 目录下的 JAR 包,导入即可。