V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  CodeCodeStudy  ›  全部回复第 1 页 / 共 54 页
回复总数  1077
1  2  3  4  5  6  7  8  9  10 ... 54  
2 小时 20 分钟前
回复了 Geekerstar 创建的主题 Java javafx 写的程序如何做混淆
就是因为反射等动态特性导致的,就像 GraalVM 的 native-image 一样,碰到反射的代码就容易出问题
3 天前
回复了 hongye 创建的主题 问与答 阿里的通义灵码不维护了吗
@javalaw2010 #20 都想抢占市场,就像在手机上,明明可以使用浏览器浏览网页,全都要使用 APP 。
都是硬盘杀手
public class Main {

public static void main(String[] args) {
try {
String className = "java.util.Collections";
Class<?> cl = Class.forName(className);
System.out.println(cl.getName());
} catch (Exception e) {
e.printStackTrace();
}

try {
long time = System.currentTimeMillis() / 1000L;
String className = time % 2 == 0 ? "java.util.Base64" : "java.util.Timer";
Class<?> cl = Class.forName(className);
System.out.println(cl.getName());
} catch (Exception e) {
e.printStackTrace();
}

}

}

javac Main.java && native-image Main && ./main

输出
java.util.Collections
java.lang.ClassNotFoundException: java.util.Base64
或者
java.util.Collections
java.lang.ClassNotFoundException: java.util.Timer

需要用到 java -agentlib:native-image-agent=config-merge-dir=./src/main/resources/META-INF/native-image Main 将动态特性收集起来,这里的 java 是指 GraalVM 的 jdk ,然后再 native-image 编译

https://www.graalvm.org/latest/reference-manual/native-image/guides/use-reachability-metadata-repository-maven/

https://www.graalvm.org/latest/reference-manual/native-image/metadata/AutomaticMetadataCollection/
Java 的 GraalVM 的 native-image ,还是需要通过 java -agentlib:native-image-agent=config-merge-dir=/path/to/config-dir/将所有的代码跑一遍,收集运行中的反射、序列化、动态代理、资源等信息,然后再进行 native-image 的 AOT 编译。好奇 PHP 是怎么处理动态特性的?
云厂商的服务器可以用他们自己的镜像,pull 后 save ,下载下来后 load
@ExplodingFKL #19 怎么剔除二进制文件的 upx 的字段
7 天前
回复了 Ayanokouji 创建的主题 Java JDK 25 发布了, LTS 版本
@w292614191 #52 这没什么,安装多个 JDK 就是了,在脚本里设置 JAVA_HOME, PATH 即可。高版本向下兼容。
8 天前
回复了 Ayanokouji 创建的主题 Java JDK 25 发布了, LTS 版本
@w292614191 #4 既然是新项目了,干嘛还要用 17 ,能用新的就用新的。jdk 半年更新一个版本,每 2 年更新一个 LTS 版本,下一个 LTS 是 27 年 9 月份的 jdk29 。
8 天前
回复了 Ayanokouji 创建的主题 Java JDK 25 发布了, LTS 版本
老项目原来用什么版本还继续用什么版本,新项目都用 jdk25 了,jdk21 虽然也是 LTS ,但是虚拟线程不完善,就不要再用了,17,11,8 都很旧的了
13 天前
回复了 moverinfo 创建的主题 程序员 tinystruct 的前世今生(1)
有什么优势吗?支持 native-image 的 AOT 吗?
13 天前
回复了 cxbdasheng 创建的主题 NAS 写了个家庭 AIO 服务器搭建教程
看标题还以为是 java 的 AIO ,就纳闷了,AIO 怎么需要跑在家庭服务器上
要产品经理有什么用,让老板直接口头讲需求给你们就好了,省一个人力
这台机器多少钱
为什么 javascript ,php 一个函数就搞定 json 了,是因为他们是动态语言吗
16 天前
回复了 mystical 创建的主题 Java 有写 Java 的么,你们的 jdk 还是用 1.8 么
20 天前
回复了 mystical 创建的主题 Java 有写 Java 的么,你们的 jdk 还是用 1.8 么
@0xsui #12

// jdk25+
void main() {
IO.println("hello,world");
}

文件名任意,比如 hello.java

直接 java hello.java

直接用 java 命令运行单文件是 11 的新特性,在 22 后可以运行多个文件
1  2  3  4  5  6  7  8  9  10 ... 54  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2914 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 58ms · UTC 12:49 · PVG 20:49 · LAX 05:49 · JFK 08:49
Developed with CodeLauncher
♥ Do have faith in what you're doing.