草庐IT

iOS OpenGL ES 2.0 VBO 混淆

全部标签

java - 编程实践(一些容易混淆的语句)

前几天,我正在阅读Kernighan和RobPike合着的编程实践。在第二章的搜索部分,我读到了其中的一些内容,这在我的脑海中造成了困惑。“没有什么比数组更适合存储静态表格数据了。编译时初始化使得构建这样的阵列既便宜又容易。(在Java中,初始化发生在运行时,但这是一个不重要的实现细节,除非数组很大。)”我的问题是,如果用户打算仅在运行时提供数组或变量,并且变量的内存分配也在运行时发生,那么在任何语言中如何进行数组或变量的编译时初始化。不知道内存地址如何初始化数组? 最佳答案 它并没有说数据是在运行时提供的。它只是说“静态”数据。如

java - 混淆 ajc 如何与 javac 一起工作

我对AspectJ编译器ajc的工作方式有点困惑。根据我在谈论CTW时的理解,ajc用于将方面编织到编译的字节码中-即:.class文件。但是,当我查看AspectJ的maven-plugin(aspectj-maven-plugin)时,发现它在generate-sources阶段运行maven,在javac编译器之前。这意味着编译器在方面编织之后运行。这是有道理的,因为您可以编织ITD、修改类成员等,Java编译器需要了解这些信息才能编译任何依赖类。所以如果是这样,并且ajc在javac之前运行,我推测ajc必须首先将所有java代码编译成字节码才能织入任何方面。那么问题来了,如果

java - Proguard:避免与预混淆库 JAR 的命名冲突

在重命名/重新打包类时,Proguard似乎没有尝试避免与库JAR中的类发生命名冲突。这是正确的,还是我没有正确配置它?我正在混淆使用最新GoogleAdMobSDK的Android应用程序。以前我使用旧的AdMobSDK没有问题。新的SDKJAR文件包含一些经过混淆处理的类。其中一个类是默认/未命名包中的a.class。当我混淆我的应用程序时,Proguard将我的一个类重命名/重新打包为未命名包中的a.class,尽管已将AdMobJAR作为库JAR读取(因此它应该知道这将导致碰撞)。不出所料,当dx工具试图将这两个同名类合并到一个.dex文件中时,我的构建失败了。作为一种解决方法

java - 关于 JDBC 资源和 JDBC 连接池 Glassfish 的一些混淆

我即将连接到我的数据库,并且我正在使用EJB和JPA。我最近开始做这些技术,所以我在理解这一切时遇到了一些问题:)我知道需要persistence.xml才能使用JPA。这是我配置如何连接到数据库的文件,我知道。然而,似乎有多种方法可以做到这一点。在persistence.xml文件和Glassfish中定义诸如用户名、数据库、密码等属性会有什么区别(或者我什么时候应该使用一个替代方案?)?优点/缺点(如果有的话)。在我发布的图像下方,我有JDBC资源和JDBC连接池。我对两者的术语有点困惑。为什么我们不在JDBCResources中添加用户名、数据库、密码等属性呢?谁能解释一下它们之

java - 混淆代码的堆栈跟踪显示未混淆的类名?

我正在使用Minecraft的服务器插件,它恰好被混淆了。我一直认为,经过混淆后,不可能恢复原来的类名,因为它们被完全删除了,我到处都是这样。修修补补一段时间后,我注意到当控制台中出现未捕获的异常时,它会显示类的混淆名称(例如atcratereloaded.aT.d),然后在括号内,通常会显示名称类和有问题的行,它显示了原始类名,这让我相信它实际上可以被反混淆。但是在我尝试过的所有工具中,似乎没有一个能够恢复原始类名,即使经过一些十六进制检查我已经确认原始类名实际上嵌入在编译的“.class”文件中。有没有什么工具可以使用它来自动恢复类名?示例堆栈跟踪:[03:49:57][Serve

java - Java 8 方法引用中的混淆,用于使用 BiPredicate 实现 equals 方法

我正在练习我的Java8技能。我遇到了一个奇怪的(对我来说)代码。我的bean类Person具有重写的equals方法。然后我尝试用equals方法实现BiPredicate。它运行成功。任何人都可以解释这是怎么可能的..因为在我看来equals方法需要1个参数,而BiPridicate的test方法需要两个参数。它是如何满足这个条件的?我的代码--Method_Ref1packagemethod_referencing;importjava.util.function.BiPredicate;importmethod_referencing.Person;//1.static....

java - java.beans.PropertyDescriptor(String, Class) 的混淆行为

我正在尝试为我拥有的bean类创建一个PropertyDescriptor。我在打电话newPropertyDescriptor(myProperty,myClass)我看到一个异常,方法“isMyProperty”不存在。稍微看一下代码--/***ConstructsaPropertyDescriptorforapropertythatfollows*thestandardJavaconventionbyhavinggetFooandsetFoo*accessormethods.Thusiftheargumentnameis"fred",itwill*assumethatthewri

Java同步混淆

抱歉,如果这非常明显或已在其他地方得到回答。我什么也没找到。我有以下代码:publicclassSimpleThreadextendsThread{publicstaticIntegersharedVal=0;publicSimpleThread(){}@Overridepublicvoidrun(){while(true){iterator();}}publicvoidtheSleeper(){System.out.println("Thread:"+this.getId()+"isgoingtosleep!");try{this.sleep(5000);}catch(Excepti

java - 你能对混淆代码进行单元测试吗?

我希望在我们现有的Ant构建脚本中混淆我们的Java网络应用程序代码,但在单元测试方面遇到了问题。我在编译代码之后,在它被jar-ed之前和运行单元测试之前混淆代码。但是,如果我混淆我的生产代码而不是我的测试代码,我的所有测试都会失败,因为它们试图调用不再存在的方法,因为它们已被混淆器重命名。我可以将某些方法标记为不混淆,以便它们可以被外部系统(例如我们的测试套件)使用,但是由于我们正在争取高单元测试覆盖率,因此我们需要将我们的方法标记为所有-可混淆。如果我也混淆测试类,我会遇到两个问题:1:生产类和测试类合并到同一个输出目录中,我无法从生产.jar文件中排除测试类2:我无法运行正常的

java - OpenGL 3 (LWJGL) LookAt 矩阵混淆

我正在使用LWJGL学习OpenGL3。我试图实现相当于gluLookAt()的功能,虽然它有效,但我对为什么有些困惑。我承认只是从网络上的各种来源复制这段代码,但经过大量研究后,我认为理解它背后的数学原理,并且我理解LWJGL在做什么。但是“正确”gluLookAt代码在我的应用程序中表现不正确,因为相机似乎转向了错误的方向。我只设法通过转置正交vector来让我的代码工作forward,side,和up(希望我使用的是正确的术语!),我很确定这是错误的...privatestaticfinalVector3fforward=newVector3f();privatestaticfi