草庐IT

native-methods

全部标签

匿名类的Java "method serialization"

假设我正在创建一个库,其中提供了一个优先级队列类。用户实例化一个并实现一个Comparator接口(interface),然后将该接口(interface)轻轻地传递到优先级队列。我想:1.允许用户轻松定义Comparator类-通过将其实现为匿名类,就像这个示例所建议的那样:PriorityQueuepq=newPriorityQueue();pq.setComparator(newComparator(){@Overridepublicintcompare(inti1,inti2){if(i1i2)return1;elsereturn0;}};);2.授予用户序列化和反序列化优先级

java - 在我的黑莓 CustomMenu 中调用 native MenuItem(切换应用程序、关闭等)

我需要在我的黑莓应用程序中创建一个自定义菜单,以便我可以管理它的外观。我通过创建一个扩展PopupScreen的类并将我的MenuItem作为带有抽象invokeAction的自定义LabelField来创建我的自定义菜单()方法。我将invokeAction()方法抽象为模拟MenuItem的run()方法。一切都很好,但我记得一件事。如果我的老板要求我实现nativeMenuItem,如SwitchApplication和Close怎么办?我认为实现Close不会有问题,但是SwitchApplication和其他原生MenuItem,例如ShowKeyboard,这会给我带来麻烦

java - RequestMappingHandlerMapping.getHandlerInternal :230 - Did not find handler method for

尝试制作一些spring示例程序-不断出现错误-碰巧我的Controller无法处理/hello请求。这是来自log4j的调试信息。13:50:58,502{TRACE}DispatcherServlet.initContextHolders:1018-Boundrequestcontexttothread:org.apache.catalina.connector.RequestFacade@636f206713:50:58,503{DEBUG}DispatcherServlet.doService:823-DispatcherServletwithname'springtest'p

java - hibernate native 查询映射

我正在尝试进行本地命名查询。我看到了链接result-set-mapping-complex-mappings我的列数超过20,有没有办法一次性映射所有列我正在使用hibernate4.2 最佳答案 您需要的是自动生成hibernate映射。你可以关注mkyong的博客https://www.mkyong.com/hibernate/how-to-generate-code-with-hibernate-tools/ 关于java-hibernatenative查询映射,我们在Stack

java - 从 Eclipse 查看 native 代码

我有一个使用native方法调用的Java应用程序。有没有办法在Eclipse中查看此代码?我可以获得这个本地库的源代码,但不知道如何在IDE中链接。如果有人告诉我如何调试此native方法,也会很有帮助。 最佳答案 不是完整的答案,但Eclipse确实有C/C++IDEfunctionality这里有一些信息(虽然看起来有点过时):InformationonCDT/JDTintegrationInfooncreatingJNIcodefrominsideEclipse(看最后一个帖子)集成调试体验似乎确实在Eclipse的能力范围

Java GC 问题 : How could an object become unreachable while one of its methods is still being executed?

我一直在读theseslides关于Java终结器。在其中,作者描述了一个场景(在幻灯片33上),其中CleanResource.finalize()可以由终结器线程运行,而CleanResource.doSomething()仍在运行另一个线程。怎么会这样?如果doSomething()是一个非静态方法,那么要执行该方法的某个人,某个地方必须对其有强引用...对吗?那么如何在方法返回之前清除这个引用呢?另一个线程能否突然进入并清空该引用?如果发生这种情况,doSomething()是否仍会在原始线程上正常返回?这就是我真正想知道的,但是对于真的超越的答案,你可以告诉我为什么幻灯片38

java - 从 Python 调用非 native Java 代码

我希望能够调用某些方法等,这些方法包含在已经运行的Javajar中(保证它会运行)。我找到了像Jython这样的东西,但那些似乎只能访问Java的native类等。 最佳答案 看看这个:CallingJavafromPython“您也可以使用Py4J。首页上有一个示例和大量文档,但本质上,您只需从python代码中调用Java方法,就好像它们是python方法一样:frompy4j.java_gatewayimportJavaGatewaygateway=JavaGateway()#connecttotheJVMjava_objec

java - 如何使用 OSGi 片段贡献具有相同文件名的平台相关 native 代码?

我正在使用JNotify项目来监听文件系统事件。这取决于每个OS:processor架构的本地库。例如,有一个用于Windowsx86的库,一个用于x86-64的库等。单体包最初,我有一个包含JNotifyJava类和native代码的包。native代码在Bundle-NativeCode中声明如下:(为了更好的可读性,我将它们格式化为bnd样式......显然实际的MANIFEST.MF文件格式正确)。Bundle-NativeCode:jnotify_64bit.dll;osname=Win32;osname="WindowsNT(unknown)";osname=Windows

java - JNI 直接缓冲区。谁负责 native 缓冲区释放?

一方面,假设我们有一个使用env->NewDirectByteBuffer()创建的直接字节缓冲区。另一方面,我们有类似的直接缓冲区,但使用ByteBuffer.allocateDirect()创建。显然,这两个对象都应该由JVM以相同的方式管理,包括管理后备native缓冲区,在第一种情况下由用户提供,在第二种情况下由JVM从native堆中分配。当然,JVM必须在第二个对象的GC期间释放后备缓冲区(使用ByteBuffer.allocateDirect()实例化)。我的问题是:JVM会在第一个对象的GC期间尝试释放缓冲区(使用env->NewDirectByteBuffer()实例

java - 抽象方法的 native 实现

在Java中是否允许在一个类中有一个抽象方法,然后在另一个使用JNI的本地语言中实现它。例子:abstractclassMommy{abstractprotectedvoidcall();}classSonextendsMommy{nativeprotectedvoidcall()/*'nativecode'*/}预期的行为是什么,它是可能发生的运行时错误还是“解决方法”一切正常? 最佳答案 Whatistheexpectedbehaviourisitaruntimeerrorthatmayoccursoreverythingisf