问题标签 [urlclassloader]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 从类中读取字节
我正在尝试从文件系统上的路径中获取一个类,并从中获取字节。我已经尝试过下面的内容,但没有成功。现在应该只打印出名称。如果有人对如何做我正在做的事情有任何想法,请告诉我。它甚至可能比这更容易......
java - Java 从动态外部 jar 中读取文件
我正在尝试做并且一直在研究如何做很多天是有一个母罐子,它可以通过一个文件夹查看并动态加载所有罐子(不需要知道它们),这样我才能工作插件内需要一个名为plugin
. 我目前有一个可以启动插件的工作类加载器,但我无法读取plugin
文件。
这是我当前的代码:
加载类
错误是(第 44 行:in = new Buffered....)
非常感谢您的帮助
完成的工作代码是:
java - Java 反射:如何在不将该项目或 JAR 添加到我的类路径的情况下从另一个项目加载一个类?
这是我的情况:我在项目 A 中有一个类。我想在项目 B 中的一个方法中加载这个类,而不需要将项目 A(或包含该类的 JAR)添加到我的项目 B 类路径中(我个人不反对这样做那样,但我必须按照规范构建它)。
请注意,我不知道此类的绝对路径(我们称之为“MyClass”),因为项目 A 可能安装在不同的位置。但是,我会知道如何根据我当前的目录导航到它,这就是我所做的。
这是我尝试过的:
这会引发 ClassNotFoundException。难道我做错了什么?
java - Dynamically load class in Linux Java
I'm doing as a school project a multi-platform Distributed Data Base System
I need to extract data from the Data Base in Java so i dynamically load my jdbc connector
Works Perfect in Windows
But in Linux I got the error:
"No suitable driver found for jdbc:mysql://..."
This is the code:
I don't know what can I do.
This it's made to avoid the installation of the connector on each site
I pass a file with the configuration for each DB, if is postgresql load postgres jdbc conector if is mysql etc...
Suggestions?
java - Java URLClassloder 挂起
我有多个从目录中的各种包中编译的 Java 类文件,就像这样。
C:/classes/package/A.class
C:/classes/package/B.class
C:/classes/package/subpackage/C.class
C:/classes/package/subpackage/D.class
我正在尝试使用这样的 URLClassloader 加载它们。
这段代码运行良好,直到我尝试加载“package.subpackage.D”。该程序永久挂起。
更改加载类的顺序没有任何效果,但经过大量实验,我发现任何扩展本机类的类都会导致这种挂起,“本机”指的是运行时中已经存在的所有类。
所以这是我的问题:
这是在运行时加载类的正确方法吗?
有解决问题的方法吗?
感谢您的时间。
java - ClassNotFoundException 加载运行时编译的子类
我正在使用 JavaCompiler 在运行时从 Web 应用程序中编译 CustomProcessor.java
编译顺利,我最终得到了一个我试图加载的类文件URLClassLoader
问题是我正在点击我ClassNotFoundException
在Processor
应用程序其他地方使用的一个(因为我知道它在那里)。
我需要做什么才能在运行时com.mycompany.Processor
可见?
谢谢。
java - 设置 URLClassLoader 的用户代理
好吧,所以。我有自己的网站,在 jar 中加载了一个小程序。我想使用 java 程序通过 URLClassLoader 加载 jar,并以这种方式启动小程序。
我正在使用这段代码:
它会生成 403 错误,但是当我检查我网站上的错误日志时,它并没有显示任何人 403'd。
当我的网站日志没有时,为什么 java 会输出 403 错误?
如果我打开一个 urlconnection 并设置用户代理,它可以工作,但如果我不这样做,它会 403。
所以我想知道,如何设置用户代理以使 URLClassLoader 不会出错。或者是否有另一种方法可以加载小程序 jar 而无需将其下载到用户的 PC 上?
java - 使用 ClassLoader 后类不可用
如果我在运行时使用 URLClassLoader 从文件中加载一个类:
这似乎工作 - 输出1
is loaded com.robert.test.NumberUtil
。
如果我然后尝试使用创建该类的实例
我得到一个ClassNotFoundException: com.robert.test.NumberTest
. 我正在尝试做的事情可能吗?或者我是否必须使用该类1
(即使用从返回的对象classLoader.loadClass()
,一旦超出范围重新加载它?)。
java - 检测 Java JAR/代码篡改
我正在编写一个作为 JAR 文件分发的软件。目前,这个 JAR 文件可以被篡改,以检索和保存我们的服务器通过 传输的另一个文件URLClassLoader
,被反编译,并在我们的代码中找到各种应该保持私有的东西,以确保使用它的客户端的安全。基本上,我想实现一种方法来检查原始 JAR 是否被篡改。我知道通过实施对SignedObject
由于Java的性质能够被反编译,因此在原始类中,但是是否有其他方法可以确定原始文件中的代码是否已被篡改?此检查可以通过下载的用于检查有效性的中间类或任何其他保证有效的方式进行。我整天都坐在这里试图想出解决这个问题的办法。欢迎任何帮助。
java - NoClassDefFoundError(更改类名)
我试图通过覆盖 loadClass(String, Boolean) 方法来更改类名。
我正在创建一个 BukkitPlugin。Bukkitsource 可以在这里找到
类加载器本身工作正常,我对其进行了测试,所有类都工作正常,在我开始更改类名后开始出现错误。
这是方法:
当我使用类加载器时,每次我使用一个被替换的类时都会得到一个 NoClassDefFoundError 。我最好的猜测是我必须重写另一种方法,但我不知道它可能是什么。
错误日志:
IEPlugin.java:25 是这样的:
jvm 正在搜索错误的 classDefinition,它会查找带有包 'v1_5_R3' 的那个,但我将 loadClass() 中的类名替换为 'v1_6_R2'
我将类名 'org.bukkit.craftbukkit.v1_5_R3.CraftServer 替换为 'org.bukkit.craftbukkit.v1_6_R2.CraftServer'
带有 v1_5_R3 的包中的类不存在,这就是为什么我在 loadClass(String, Boolean) 方法中将其更改为 v1_6_R2
感谢您的阅读和您希望即将到来的解决方案。