我键入"java -jar ShowTime.jar",并收到此错误消息:
Exception in thread "main" java.lang.ClassFormatError: Incompatible magic value 1347093252 in class file ShowTime
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Run Code Online (Sandbox Code Playgroud)
我该怎么解决这个问题?PS我有一个mac.
ocamldebug中的调用堆栈是真正的调用堆栈,因此进行尾调用的函数不会显示在其中.这令人困惑.如何获得包含尾调用的回溯?
ocaml functional-programming stack-trace tail-call-optimization
是否可以使用Enumerator或EnumeratorM组成任意函数,以便通过应用函数首先对推送到iteratee中的每个单独的数据项进行预处理?
我合并失败,直到将其推送到GitHub之前,我才知道这是合并失败,现在我不知道如何撤消/还原它。
故事是这样的:
我打开了两个不同的分支,并对这些分支进行了一些更改。过了一会儿,我决定将那些分支合并回master分支,并$ git merge branch_name用于此目的。我合并了第一个分支,然后检查了master分支的日志:该分支上的所有提交都在master上。然后,我用同一命令进行第二个分支的合并。然后,我再次检查了master的日志,在这里我看到了合并分支上的提交,包括带有以下注释的提交:“合并分支branch_name”。当我合并另一个分支时,不包括这样的注释。
长话短说,问题在于git将第一个分支的提交合并到master了,就像它们已经是master的提交一样。当您检查来自“ GitHub”的网络图或来自“ gitg”的图时,没有留下第一个分支的痕迹,但是其提交显示为master分支的提交。第二个分支没有问题:单独显示该分支,并按预期进行合并。还要注意,在运行merge命令之后$ git branch -d branch_name,不幸的是,我继续通过删除分支,就像这是最紧迫的事情。
现在,我想回到两次连续合并之前的位置。任何帮助表示赞赏。如果您评论发生这种情况的原因,那也将是令人愉快的。
我在想我们可以证明一个程序有错误.我们可以对其进行测试,以评估它是否或多或少具有抗虫性.
但有没有办法(甚至在理论上)证明程序没有错误?
对于简单的程序,例如"Hello World",我想我们应该能够做到.但是大型项目呢?
如何以与Apache日志(即包括URL和客户端IP)的方式类似的方式记录进入Play 2应用程序的所有请求?
是否可以使用Play Framework 2.2在Scala中创建一个通用函数,它将任意对象序列化为JSON,而不必提供编写器或格式化程序?
例如,这个非通用代码将为Customer创建一个JSON响应:
import play.api.libs.json._
import play.api.libs.functional.syntax._
case class Customer(id: Int, name: String)
object scratch {
val p = Customer(1, "n")
//> p : Customer = Customer(1,n)
def createJsonResponseCustomer(data: Customer) = {
implicit val formatter = Json.format[Customer]
Json.obj("success" -> true, "data" -> Json.toJson[Customer](data))
}
createJsonResponseCustomer(p)
//> res0: play.api.libs.json.JsObject = {"success":true,"data":{"id":1,"name":"n"}}
}
Run Code Online (Sandbox Code Playgroud)
为了避免为每个不同的对象定义格式化程序,我想创建一个这样的通用函数:
def createJsonResponse[T](data: T) = {
implicit val formatter = Json.format[T]
Json.obj("success" -> true, "data" -> Json.toJson[T](data))
}
Run Code Online (Sandbox Code Playgroud)
但是,这种尝试产生错误No unapply function found的Json.format[T].
换句话说,这有效:
def …Run Code Online (Sandbox Code Playgroud) 我有Java应用程序,它集中使用2D浮点数组(float [] []数组),实际上在黑色背景上保存图像.两个维度都是等于(正方形)并且是2的幂(大多数是256,512,1024),因此在大多数情况下,靠近边界的区域具有零.
大小等于2的功率以提高性能(存在一些FFT)并且降低了那些阵列上的操作的复杂性,例如旋转等.最近我在6Gb的机器上面临这个应用程序的堆缺乏.通过我的计算 - 这个应用程序的内存消耗应该高达2-3Gb,而它达到4-5Gb(在Windows任务管理器中查看).我使用了"YourKit"分析器,它显示那些浮点数阵列确实占用了大部分内存,但是,这些浮点数组的总粗略大小应该是1.3Gb(嗯,我知道由JVM决定如何存储数据,但是我没想到内存消耗会有2-3倍的差异.
我试图使用Snappy压缩器动态压缩/解压缩数据(并且内存消耗降至3.5Gb),但性能下降了几次,这是不可接受的.此外,我在BufferedImage替换那些浮动[] []时测试性能,但性能非常差.
因此,还有两种方法可以减少内存消耗:1)为float [] []数组写包装器以保存"零"元素(有很多"空"行和列)2 )远离"2的力量"
这两种方式都需要相当多的编码/重构,所以当我想"成为或不成为"时 - 你可能对这个问题有更好的线索,伙计们?
谢谢!
下面的代码以Caesar的方式加密单词或句子.你把移位值和程序取出单词/句子的每个字母,并根据移位(键)值在字母表中"移动".但这不是问题.我在互联网上找到了代码,我无法解释其中的一些内容.我知道它是如何工作的,但我需要一些关于它的一些特定答案.这是代码:
import acm.program.*;
public class CaesarCipher extends ConsoleProgram {
public void run() {
println("This program implements a Caesar cipher.");
int key = readInt("Character positions to shift: ");
String plaintext = readLine("Enter a message: ");
String ciphertext = encodeCaesarCipher(plaintext, key);
println("Encoded message: " + ciphertext);
}
private String encodeCaesarCipher(String str, int key) {
if (key < 0) key = 26 - (-key % 26);
String result = "";
for (int i = 0; i < str.length(); i++) {
char ch = …Run Code Online (Sandbox Code Playgroud) 我正在开发一个程序,它使用大量IORef的数据类型列表.哪种内存/处理器效率更高的方法:
[IORef Foo]
Run Code Online (Sandbox Code Playgroud)
要么
IORef [Foo]
Run Code Online (Sandbox Code Playgroud)
忽略我使用列表而不是向量或数组的事实.