小编utd*_*mir的帖子

Maven依赖项上的NoClassDefFoundError

我第一次使用Maven而且我坚持依赖.

我用Eclipse创建了一个Maven项目并添加了依赖项,并且它没有问题.

但是当我尝试通过命令行运行它时:

$ mvn package  # successfully completes
$ java -cp target/bil138_4-0.0.1-SNAPSHOT.jar tr.edu.hacettepe.cs.b21127113.bil138_4.App # NoClassDefFoundError for dependencies
Run Code Online (Sandbox Code Playgroud)

它下载依赖项,成功构建,但是当我尝试运行它时,我得到NoClassDefFoundError:

Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/jackson/JsonParseException
        at tr.edu.hacettepe.cs.b21127113.bil138_4.db.DatabaseManager.<init>(DatabaseManager.java:16)
        at tr.edu.hacettepe.cs.b21127113.bil138_4.db.DatabaseManager.<init>(DatabaseManager.java:22)
        at tr.edu.hacettepe.cs.b21127113.bil138_4.App.main(App.java:10)
Caused by: java.lang.ClassNotFoundException: org.codehaus.jackson.JsonParseException
        at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
        ... 3 more
Run Code Online (Sandbox Code Playgroud)

我的pom.xml是这样的:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>tr.edu.hacettepe.cs.b21127113</groupId>
  <artifactId>bil138_4</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>bil138_4</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>        
    <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>           
    </dependency>
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>             
        </dependency>
  </dependencies>
  <dependencyManagement>
    <dependencies>
    <dependency> …
Run Code Online (Sandbox Code Playgroud)

java maven-3 maven

63
推荐指数
3
解决办法
11万
查看次数

Fibonacci数字,在Python 3中有一个单行程?

我知道使用适当的函数结构编写没有任何问题,但我想知道如何用大多数Pythonic方式找到第n个斐波那契数字和一行.

我写了那段代码,但在我看来并不是最好的方式:

>>> fib=lambda n:reduce(lambda x,y:(x[0]+x[1],x[0]),[(1,1)]*(n-2))[0]
>>> fib(8)
13
Run Code Online (Sandbox Code Playgroud)

怎么会更好更简单?

python fibonacci

43
推荐指数
8
解决办法
3万
查看次数

如何通过他/她的号码获取联系人姓名

我正在尝试使用Android Scripting和Python开发一个简单的应用程序.

现在,我有一个电话号码,我想找出哪个联系人有这个号码.我可以做一个contactsGet()并搜索数字,但是有很多程序使用这个功能,我认为有一种更简单的方法.

有一个问题有同样的问题,但Java,是否有Python等价? 按电话号码搜索联系人

有没有一种简单的方法来实现这一目标?

任何示例代码都表示赞赏.

编辑,几天后没有回答,我决定稍微改变一下这个问题:搜索一个数字的最佳方法是什么,我用contactsGet()获得了一个列表?

python android android-scripting

20
推荐指数
1
解决办法
2604
查看次数

Bootstrap Collapse - Jquery"全部折叠"功能

我正在前端使用Bootstrap编写个人提要阅读器,并希望添加"折叠/全部展开"按钮.

这是我的第一个JavaScript/JQuery代码,所以除了在Firefox Developer Console中打印变量之外我不知道如何调试它.

我的页面结构由面板组成.用户可以通过单击面板标题来展开或折叠面板.还有一个折叠或展开所有面板的按钮.

我的解决方案大部分时间都有效,但我注意到了一个奇怪的行为.以下是我重现问题的方法:

  1. 第一次打开页面
  2. 单击其标题展开一个面板
  3. 现在,折叠全部按钮会折叠打开的面板,并展开其他按钮.好像它"切换"所有面板而不是关闭它们.
  4. 在这种奇怪的行为之后,一切都很正常,我无法在不刷新页面的情况下重现问题.在每个步骤open_panel_count变量看起来正常.

这是我正在使用的方法:

$(function() {
  open_panel_count = 0;
  function update_toggle_button() { 
    $('#toggle-btn').text((open_panel_count ? "Collapse" : "Expand") + " All")
  }
  update_toggle_button(); // Run once on page load to text #toggle-btn

  $('#toggle-btn').click(function() {
    $('.panel-collapse').collapse(open_panel_count ? 'hide' : 'show');
  });

  $('.panel-collapse').on('shown.bs.collapse', function () {
    open_panel_count++;
    update_toggle_button();
  });

  $('.panel-collapse').on('hidden.bs.collapse', function () {
    open_panel_count--;
    update_toggle_button();
  });
});
Run Code Online (Sandbox Code Playgroud)

谁能指出我做错了什么?

您可以在以下网址中查看整个模板:https://github.com/utdemir/furby/blob/master/template.erb 并访问以下网址的演示:http://p.cogunluklazararsiz.org/furby/

javascript jquery twitter-bootstrap

7
推荐指数
2
解决办法
5万
查看次数

推断Eq类型类

我正在写一个类似于应用程序的CRUD,并且主键有很多查找(主键可以有不同的类型).所以我定义了以下类型类:

{-# LANGUAGE MultiParamTypeClasses #-}

class Eq b => HasPK a b where
  getPK :: a -> b
Run Code Online (Sandbox Code Playgroud)

现在我可以写:

import Data.Maybe

lookupPK :: HasPK a b => b -> [a] -> Maybe a
lookupPK s = listToMaybe . filter ((== s) . getPK)
Run Code Online (Sandbox Code Playgroud)

现在,当我想用​​PK比较两件事时,我只想比较他们的PK.所以,我试图定义这个:

{-# LANGUAGE FlexibleInstances    #-}
{-# LANGUAGE UndecidableInstances #-}

instance (HasPK a b) => Eq a where
  (==) = (==) `on` getPK
Run Code Online (Sandbox Code Playgroud)

但现在它给了我:

src/Utils.hs:61:10: Could not deduce (HasPK a b0) …
      arising from the ambiguity check for …
Run Code Online (Sandbox Code Playgroud)

haskell typeclass

7
推荐指数
1
解决办法
87
查看次数

hsv_to_rgb不是matplotlib上rgb_to_hsv的反转

我试图将图像转换为hsv并返回到rgb,但不知怎的,我丢失了颜色信息.

import matplotlib
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
Run Code Online (Sandbox Code Playgroud)

而且我也在shell上复制了这个问题,只是在导入后写这行也会得到相同的结果.

plt.imshow(
  matplotlib.colors.hsv_to_rgb(
    matplotlib.colors.rgb_to_hsv(mpimg.imread('go2.jpg'))
  )
)
Run Code Online (Sandbox Code Playgroud)

你能告诉我我做错了什么吗?

python image-processing matplotlib

6
推荐指数
1
解决办法
1111
查看次数

QString:Unicode编码 - 解码问题

我试图简单地将Unicode字符串转换为标准字符串,但没有成功.

我有: PyQt4.QtCore.QString(u'\xc5\x9f')

我想:'\xc5\x9f' 注意str类型不是unicode,因为我使用的库不接受unicode.

这是我尝试过的,你可以看到我是多么绝望:):

>>> s = QtCore.QString(u'\xc5\x9f')
>>> str(s)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128) '
>>> s.toUtf8()
PyQt4.QtCore.QByteArray('\xc3\x85\xc2\x9f')
>>> s.toUtf8().decode("utf-8")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'QByteArray' object has no attribute 'decode'
>>> str(s.toUtf8()).decode("utf-8")
u'\xc5\x9f'
>>> str(str(s.toUtf8()).decode("utf-8"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec …
Run Code Online (Sandbox Code Playgroud)

python pyqt

5
推荐指数
2
解决办法
1万
查看次数

检查 QValidator 的状态

首先,抱歉我的英语不好。

我正在尝试从用户那里获取IP。我正在使用 QRegExpValidator 来检查用户输入。验证器成功阻止不需要的字符。但我想知道当用户单击按钮时它是一个正确的IP。当然,我可以手动检查文本,但似乎有更好的方法,使用 QValidator 的状态枚举。QValidator.Acceptable 是我需要检查的。但我不知道如何使用它

这是我需要使用的: http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvalidator.html#State-enum

这是我尝试过的(从主程序中提取):

from PyQt4 import QtCore, QtGui
from functools import partial

class Gui(QtGui.QDialog):
    def __init__(self):
        QtGui.QDialog.__init__(self)

        editLayout=QtGui.QFormLayout()

        edit=QtGui.QLineEdit()
        edit.setMinimumWidth(125)
        regex=QtCore.QRegExp("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}")
        validator=QtGui.QRegExpValidator(regex, edit)

        edit.setValidator(validator)

        editLayout.addRow("Enter Client IP:", edit)

        button=QtGui.QPushButton("Add Client")
        button.clicked.connect(partial(self.addClientButtonClicked, edit, validator))

        layout=QtGui.QVBoxLayout()
        layout.addLayout(editLayout)
        layout.addWidget(button)

        self.setLayout(layout)

    def addClientButtonClicked(self, edit, validator):
        print("ip=", edit.text())
        print(validator.State==QtGui.QValidator.Intermediate)


app=QtGui.QApplication([])
g=Gui()
g.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)

期望的输出:

ip= 192.168.
False
ip= 192.168.2.1
True
Run Code Online (Sandbox Code Playgroud)

但这就是我得到的:

ip= 192.168.
False
ip= 192.168.2.1
False
Run Code Online (Sandbox Code Playgroud)

检查 QValidator 状态的正确方法是什么?

python pyqt

3
推荐指数
1
解决办法
7536
查看次数

使用Python在Linux上学习目录的物理磁盘

首先,抱歉我的英语不好.

我正在编写一个python脚本,它比较两个不同目录中的文件.但是为了性能,我想知道:"目录是否在同一物理磁盘上?",所以我可以同时读取它们以获得性能提升.

我目前的想法是获取"mount"命令输出,并获取/ dev/sd*目录路径并使用它们来识别磁盘.但有时你可以在其他地方安装一个已安装的目录(或类似的东西,我不太确定),所以事情变得复杂了.

有没有更好的方法来做到这一点,比如图书馆?

(如果有跨平台的方式,我会更感激,但似乎很难找到像这样的跨平台库.)

python linux

1
推荐指数
1
解决办法
484
查看次数

关于IO的困惑和做法

我是Haskell的初学者,对我编写的这段代码感到困惑

readRecords :: String -> [Either String Record]
readRecords path = do
    f <- B.readFile path
    map parseLogLine (C8.lines f)
Run Code Online (Sandbox Code Playgroud)

但它给了我这个错误:

Main.hs:15:10:
    Couldn't match type `IO' with `[]'
    Expected type: [C8.ByteString]
      Actual type: IO C8.ByteString
    In the return type of a call of `B.readFile'
    In a stmt of a 'do' block: f <- B.readFile path
    In the expression:
      do { f <- B.readFile path;
           map parseLogLine (C8.lines f) }
Run Code Online (Sandbox Code Playgroud)

parseLogLine的签名是parseLogLine :: B8.ByteString -> Either String Record.

我完全惊讶. …

io monads haskell

1
推荐指数
1
解决办法
191
查看次数