Tag: java

Dx不好的类文件魔法(cafebabe)或版本(0033.0000)与ADK14

自从转向ADK14以来,我一直无法在Windows 7系统上构build新的发行版。 build立失败,“转换为达尔文格式失败,错误1”,而控制台充满了大量的“Dx坏类文件魔术(cafebabe)或版本(0033.0000)”。 完整的例外文本: com.android.ide.eclipse.adt.internal.build.DexException: Conversion to Dalvik format failed with error 1 at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:740) at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:204) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.doExport(ExportWizard.java:290) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.access$0(ExportWizard.java:229) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard$1.run(ExportWizard.java:214) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121) 我正在构build一个使用大量库的旧项目,所以这个问题可能与这个事实有关。 已经完成了所有的“固定属性”/清洁等移动到ADK14build议(因为我自然有这些问题),但他们没有帮助。 所有的库都在同一个Android SDK和JDK / JRE版本上,所以这似乎不是问题。事实上,该应用程序很容易内置在debugging和安装在我的老版本1.5macros达魔术 – 它只是当我需要导出一个签名的应用程序包,这个分解。 [编辑]这是在Windows 7×64电脑上。 我观察到,在我的Linux笔记本电脑(Lucid Lynx)上安装apk的完全相同的代码完全没有任何问题。 有任何想法吗? 对此感到非常沮丧。 注意 显然,这个错误信息可以由各种不同的问题触发。 我的特殊问题与Java 6/7无关,因为我从来没有安装过Java 7,编译器的合规性被设置为Java 6(当时我检查过,因为我已经看到了其他地方提出的解决scheme)。

java.io.IOException:不支持标记/重置

try { //String location = dir1.getCanonicalPath()+"\\app_yamb_test1\\mySound.au"; //displayMessage(location); AudioInputStream audio2 = AudioSystem.getAudioInputStream(getClass().getResourceAsStream("mySound.au")); Clip clip2 = AudioSystem.getClip(); clip2.open(audio2); clip2.start(); } catch (UnsupportedAudioFileException uae) { System.out.println(uae); JOptionPane.showMessageDialog(null, uae.toString()); } catch (IOException ioe) { System.out.println("Couldn't find it"); JOptionPane.showMessageDialog(null, ioe.toString()); } catch (LineUnavailableException lua) { System.out.println(lua); JOptionPane.showMessageDialog(null, lua.toString()); } 当我从netbeans运行应用程序时,此代码正常工作。 声音播放,没有例外。 但是,当我从dist文件夹运行它时,声音不起作用,我得到了java.io.IOException: mark/reset not supported在我的消息对话框中。 我该如何解决这个问题?

如何从类path加载/引用文件作为File实例

我有一个在我的类path中的文件。 例如,com / path / to / file.txt。 我需要加载或引用这个文件作为java.io.File对象。 原因是因为我需要使用java.io.RandomAccessFile访问文件(该文件很大,我需要查找字节偏移量)。 这可能吗? RandomAccessFile的构造函数需要一个File实例或String(path)。 如果还有另外一种方法来查找某个字节偏移并读取该行,那么我也可以打开该解决scheme。 谢谢。

什么时候执行一个类的静态块?

我有2个jar子,让我们叫他们a.jar和b.jar。 b.jar依赖于a.jar。 在a.jar中,我定义了一个类,我们称之为StaticClass。 在StaticClass中,我定义了一个静态块,调用一个名为“init”的方法: public class StaticClass { static { init(); } public void static init () { // do some initialization here } } 在b.jar,我有一个主,所以在主要的,我期望的init()方法已被调用,但实际上不是。 我怀疑是因为StaticClass没有被jvm加载,谁能告诉我 我的结论是正确的吗? 什么触发jvm加载类? 我怎样才能得到静态块自动执行? 谢谢

复制stream以避免“stream已经被操作或closures”(Java 8)

我想复制一个Java 8stream,以便我可以处理它两次。 我可以collect一个列表,并从中获得新的stream; // doSomething() returns a stream List<A> thing = doSomething().collect(toList()); thing.stream()… // do stuff thing.stream()… // do other stuff 但我认为应该有一个更高效/优雅的方式。 有没有办法复制stream而不把它变成一个集合? 实际上,我正在处理任意一个stream,所以我们需要先处理左侧的投影,然后再移动到正确的投影中,然后用另一种方式处理。 有点像这样(到目前为止,我不得不使用toList技巧)。 List<Either<Pair<A, Throwable>, A>> results = doSomething().collect(toList()); Stream<Pair<A, Throwable>> failures = results.stream().flatMap(either -> either.left()); failures.forEach(failure -> … ); Stream<A> successes = results.stream().flatMap(either -> either.right()); successes.forEach(success -> … );

Java的generics:不能强制List <SubClass>列表<SuperClass>?

刚刚遇到这个问题: List<DataNode> a1 = new ArrayList<DataNode>(); List<Tree> b1 = a1; // compile error: incompatible type typesDataNode是Tree的子types。 public class DataNode implements Tree 令我惊讶的是,这对arrays起作用: DataNode[] a2 = new DataNode[0]; Tree[] b2 = a2; // this is okay 这有点奇怪 任何人都可以对此作出解释吗?

使用Jackson更改JSON中的字段名称

我正在使用jackson将我的对象转换为json。 该对象有2个字段: @Entity public class City { @id Long id; String name; public String getName() { return name; } public void setName(String name){ this.name = name; } public Long getId() { return id; } public void setName(Long id){ this.id = id; } } 因为我想要使用jQuery自动完成function,所以我希望'id'在json和'name'中显示为'value',显示为'label'。 jackson的文档不清楚,我已经尝试了每个注释,即使是远程似乎它做我所需要的,但我不能让name显示为label和id显示为value的JSON。 有谁知道如何做到这一点,如果这是可能的?

如何在Java中获得一个文本文件的随机行?

说有一个文件太大,不能记忆。 我怎样才能从它的随机线? 谢谢。 更新:我想要得到每一行的概率是平等的。

Android Microsoft Office Library(.doc,.docx,.xls,.ppt等)

有谁知道一个好的Java微软Office API的能力或运行在Android上? 我知道有一个OpenOffice Java API,但我没有听说有人在Android上使用它。 我知道使用意图是另一种select,但是在不同的Android发行版上,预安装的办公观众有多普遍? 开发者期望用户安装这些观众之一是否合理? 如果他们还没有安装这些应用程序,是否有理由要求他们安装这些应用程序?

何时closuresJDBC中的Connection,Statement,PreparedStatement和ResultSet

关于JDBC编码的几个问题: 对于单个客户端应用程序,我们是否需要连接池? 在开始时创build一个Connection并保持活动状态而不closures它是一个好主意,直​​到应用程序退出? 为什么? PreparedStatement与Connection关联,如果在每个查询之后我的连接没有closures,为什么不保持PreparedStatement的存在并在其他方法中重用呢? 如果我们创buildPreparedStatement每个查询,数据库知道它是相同的PreparedStaement并在第一次后忽略不必要的操作? PreparedStatement是不是一次创build和重用多次声明? 如果是,为什么每次都需要closures它? 我知道调用close()会释放资源。 但是如果我们知道我们稍后会使用它,为什么要释放它,然后再请求它呢? 多客户端应用程序如何? 我们需要连接池,所以我们需要每次创build和closures连接,语句和PreparedStatement? 谢谢,