Articles of jvm

Android系统是否包含JVM?

我知道Android系统包括Dalvik虚拟机(DVM)但是我不明白,如果Android系统包含JVM还是DVM是JVM的替代品? 谢谢

Intellij想法显示错误:无法创buildJava虚拟机

我在intellij idea ide有困难。 这工作正常,但突然开始显示错误: Android Dex: [untitled3] Error: Could not create the Java Virtual Machine. Android Dex: [untitled3] Error: A fatal exception has occurred. Program will exit. 我检查了我的sdk,jdkpath。 我已经做了re-installing ,但问题仍然是一样的。 任何帮助,将不胜感激。 谢谢。

你如何调整jvm参数在gradle中的dex内存?

我有一个Android项目,目前在dex步骤中堆空间不足: :app:dexXXXXX Exception in thread "pool-1-thread-4" java.lang.OutOfMemoryError: Java heap space 我想碰撞gradle中的jvm min / max设置,就像我们以前用Maven插件所做的那样: <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.6.0</version> <extensions>true</extensions> <configuration> <sdk> <platform>${android.platform}</platform> </sdk> <undeployBeforeDeploy>true</undeployBeforeDeploy> <dex> <jvmArguments> <jvmArgument>-Xms1024m</jvmArgument> <jvmArgument>-Xmx2048m</jvmArgument> </jvmArguments> </dex> 但是在gradle中的android插件的文档中,我只能看到这些选项: android { dexOptions { incremental false preDexLibraries = false jumboMode = false } } 有没有办法做到这一点? 有一个gradle.properties文件,但似乎只有jvmargs gradle本身。

如何在内存中运行编译kotlin文件的testing并检查结果?

到目前为止,我有 import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler MyProjectCompiler.initialize("SampleKtFileOutput") .packageName("com.test.sample") .compile(File(someFile.path)) .result { ktSource: String -> K2JVMCompiler() .exec(System.out, /** arguments here?*/) } 这个手动启动编译器,但我想从第一个编译器(生成kotlin源的MyProjectCompiler生成的string在内存中,并检查结果而不写入文件。 如果可能的话,我想包括当前类path中的所有内容。

基于寄存器的VM与基于堆栈的VM之间的主要区别是什么?

今天我正在阅读一些关于Andoird基础知识的幻灯片 ,这句话出现了: Dalvik VM是基于寄存器而不是基于堆栈的。 那么, 基于寄存器的虚拟机与基于堆栈的虚拟机有什么区别呢? 第二个链接回答了我的问题: http://markfaction.wordpress.com/2012/07/15/stack-based-vs-register-based-virtual-machine-architecture-and-the-dalvik-vm/ 另一个环节: http://androidjayavelu.blogspot.co.at/2011/06/dalvik-virtual-machine-vs-java-virtual.html

Androidunit testing不适用于Android库项目

我们正在尝试将新的Androidunit testing支持引入到我们的项目中。 对于库项目,在使用gradlew运行时无法findsrc / main / java类。 从Android Studio运行testing按预期工作。 在应用程序项目中使用gradle运行testing按预期工作。 在库项目中使用gradle运行testing失败。 我在github上创build了一个示例项目,在一个小项目中重现了这个问题。 使用gradle插件定义apply plugin: 'com.android.application'它工作正常,与插件定义apply plugin: 'com.android.library'发生错误。 错误是: home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:11: error: cannot find symbol assertEquals(2, new SomeClass().sum(1, 1)); ^ symbol: class SomeClass location: class SomeClassTest /home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:16: error: cannot find symbol new SomeClass().referenceDrawableFromR(); ^ symbol: class SomeClass location: class SomeClassTest 2 errors :common:compileDebugUnitTestJava FAILED 这是应该工作? 我错过了什么?

基于JVM的语言没有语言运行时

有没有人知道一些替代的JVM语言,不过可能是隐晦的,它可以编译为普通的旧Java字节码,而不需要语言运行时。 我需要这个为了尝试开发android应用程序没有启动或大小的惩罚。 Scala,Clojure和Groovy都需要与应用程序一起分发自己的运行时库,所以它们超出了这个问题的范围。 唯一一个声称能够满足这个目标的语言是查尔斯·纳特(Charles Nutter)的Mirah ,但是我无法在窗户上工作。 编辑:澄清一点,我知道任何语言必须有运行时库。 显然,我正在寻找的是除JRE以外没有额外运行时间的语言,或者至less非常有限的语言。

Android上的纯function编程

这方面有什么进展吗? 我希望能够用Haskell或类似的语言在Android上编写纯粹的function代码。 我已经尝试了一些与斯卡拉的例子,但似乎是一个开始的痛苦。 是否还有其他可用于编写Android应用程序的function性JVM语言? 编辑:编写原生android应用程序的函数式语言。 我关于JVM的错误。

Android Studio Emulator – Java实例不支持32位JVM

我正在Mac os x maverick上运行android studio。 我已经安装了64位JDK。 当我运行模拟器时,我收到消息 错误:构build过程终止exception: 错误:此Java实例不支持32位JVM。 请安装所需的版本。 在Android工作室。 java -version 回报 version "1.7.0_51" Java(TM) SE Runtime Environment (build 1.7.0_51-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode) 和 $JAVA_HOME 指着 /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home 所以每件事似乎都很好。 有什么可能是错的? 更新: 我的Mac上仍然有一个旧的jdk1.6。 删除它时,Android Studio要求再次安装Java 6。 所以显然Android Studio需要Java 6编译 (Andrew在这个问题的评论中已经证实)。 希望它会安装x64版本我让它安装Java 6.但是我仍然没有成功。 我也找不到适用于Mac OS X 64 Bit的 Java 6。 […]

将Android的Java VM移植到iPhone?

有谁知道任何现有的项目,旨在将Android的Java VM移植到iPhone? 据我所知,这不是太遥不可及,肯定会有一些令人兴奋的发展。 编辑 :我应该指出,我知道这不会发生使用官方的iPhone SDK。 然而,越狱平台将消除苹果公司施加的任何障碍。 我想大多数有兴趣将Android集成到iPhone中的人也将是通常拥有越狱iphone的人口。