试图在eclipse上找到摆脱这个错误的方法.
DataNucleus Enhancer (version 3.1.1) : Enhancement of classes
Encountered a problem: Unexpected exception
Run Code Online (Sandbox Code Playgroud)
这是日志
java.lang.RuntimeException: Unexpected exception
at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:76)
at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:71)
at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:51)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:74)
... 2 more
Caused by: java.lang.IllegalArgumentException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.datanucleus.enhancer.asm.ASMClassEnhancer.getClassNameForFileName(ASMClassEnhancer.java:272)
at org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:727)
at org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:525)
at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1258)
... 7 more
Run Code Online (Sandbox Code Playgroud)
我有两个版本的java,一个是1.8.0_25,另一个是1.7.0_46
这是我的道路
C:\Program Files (x86)\Java\jre7\bin;;C:\oraclexe\app\oracle\product\11.2.0\server\bin;;C:\ProgramData\Oracle\Java\javapath;
Run Code Online (Sandbox Code Playgroud)
并且作为默认情况下我在eclipse上使用jre7,不知道还有什么值得一提的.我发现在这里或其他网站上没有明确解释的解决方案,而不是尝试更改java版本,尝试在我的计算机上的所有Java实例,卸载并再次安装.我猜它可能是关于java和datanucleus compability问题,但目前使用java7和我使用的插件是从eclipse自动下载所以没有线索.如果您需要任何澄清,请问我.
我有这个代码,但它没有完全做我想要的,我拿了一个元组列表;
[(3,2),(1,2),(1,3),(1,2),(4,3),(3,2),(1,2)]
Run Code Online (Sandbox Code Playgroud)
并给出
[(1,3),(4,3),(3,2),(1,2)]
Run Code Online (Sandbox Code Playgroud)
但我希望它给予
[(1,3),(4,3)]
Run Code Online (Sandbox Code Playgroud)
我哪里做错了?提前致谢.
eliminate :: [(Int,Int)] -> [(Int,Int)]
eliminate [] = []
eliminate (x:xs)
| isTheSame xs x = eliminate xs
| otherwise = x : eliminate xs
isTheSame :: [(Int,Int)] -> (Int,Int) -> Bool
isTheSame [] _ = False
isTheSame (x:xs) a
| (fst x) == (fst a) && (snd x) == (snd a) = True
| otherwise = isTheSame xs a
Run Code Online (Sandbox Code Playgroud) 我有一个元组列表,我试图使用它的元素来达到嵌套列表的元素.
list = [["c","a","b"],["k","l","m"]]
indexTuple = [(0,1),(1,1),(1,2)]
Run Code Online (Sandbox Code Playgroud)
这样我需要检查列表中与indexTuple元素对应的元素中是否有"a".我到目前为止的尝试;
seekinga :: [[[Char]]] -> Int -> Int -> Int -> [(Int,Int)]
seekinga list x y width
| list !!(map fst indexTuple) !!(map snd indexTuple) == "a" = [(fst indexTuple,snd indexTuple)]
| otherwise = [()]
where indexTuple = [(x,y) | x <- [x-width..x+width], y <- [y-width..y+width]]
Run Code Online (Sandbox Code Playgroud)
这显然不起作用,因为!! 运算符需要整数才能处理,但映射返回列表.任何建议都非常感谢.
现在我已经有了一个函数,它取了元组第一个元素列表的最小值,例如;
mymin [(3,4),(3,2),(4,3)] = 3
Run Code Online (Sandbox Code Playgroud)
通过使用这个函数,我想把所有以3作为第一个元素的元组.我试图过滤掉第一个元素上有3个元素的那个;
filter (\a -> mymin (x:xs) == fst x) (x:xs)
Run Code Online (Sandbox Code Playgroud)
这使
[(3,4),(3,2),(4,3)]
Run Code Online (Sandbox Code Playgroud)
再次,因为每次它削减列表,它再次找到mymin,但我只是想采取
[(3,4),(3,2)]
Run Code Online (Sandbox Code Playgroud)
部分,我应该遵循什么样的轨道,我卡住了.谢谢你的帮助.