我正在构建一个小型Java应用程序,并希望使用logback进行日志记录.
我的应用程序依赖于通过其进行日志记录的旧项目
org.apache.commons | com.springsource.org.apache.commons.logging | 1.1.1
Run Code Online (Sandbox Code Playgroud)
......所以我的计划是使用
org.slf4j | jcl-over-slf4j | 1.5.6
Run Code Online (Sandbox Code Playgroud)
...将JCL日志记录重定向到
org.slf4j | slf4j-api | 1.6.0
Run Code Online (Sandbox Code Playgroud)
......最终到了
ch.qos.logback | logback-classic | 0.9.22
ch.qos.logback | logback-core | 0.9.22
Run Code Online (Sandbox Code Playgroud)
所以我的应用程序可以通过其slf4j API登录logback,而旧的库代码可以通过重定向登录到同一位置.
唉,这导致了
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
at org.apache.commons.logging.impl.SLF4JLocationAwareLog.info(SLF4JLocationAwareLog.java:141)
Run Code Online (Sandbox Code Playgroud)
我已经在其中一些罐子上尝试过更高和更低的版本号,并且还通过API文档等进行挖掘...但我无法找到并解决问题.
请帮忙?
虽然logback被认为是"战略"日志框架,但我有一些余地,我最终使用哪种日志记录机制.我希望使用logback或log4j,我肯定希望通过常见配置将旧项目的日志记录合并到"新"日志框架最终的任何内容中.
尾递归是函数式语言中一个重要的性能优化策略,因为它允许递归调用消耗常量堆栈(而不是O(n)).
是否有任何问题根本无法以尾递归方式编写,或者总是可以将天真递归函数转换为尾递归函数?
如果是这样,有一天功能编译器和解释器可能足够智能以自动执行转换?
仅Java库中就有8个布局管理器,然后还有一堆第三方产品.
前几天,我试图使用SpringLayout ......好吧,它对我不起作用.看到我的另一个问题.所以...如果你有一个Swing应用程序的设计,并希望您的布局只是这样,什么是您的首选布局管理器?有关的任何有趣/有用的经历?
更新:是的,确定我知道不同的LM适合不同的布局.但是我希望大多数人在你做的大部分事情中都使用1,2或3,或者你发誓这是一个多才多艺的你永远不需要的东西.有足够的响应,我希望看到类似钟形曲线,GridBagLayout或MigLayout(例如)上的峰值以及使用(例如)BoxLayout或FlowLayout的几个散乱者的长尾.
希望,回复的分布将揭示人们最常使用什么来获取Stuff Done ™的一些趋势
好的,差不多2天后,MiGLayout绝对不在眼前!它的粉丝很高兴听到这个布局很快就会进入"官方"图书馆.
GroupLayout,FormsLayout和TableLayout相对较新,并没有得到太多曝光.也许其他人会像我一样惊讶地发现它们.
我将上一个问题中的以下代码剪切并粘贴到名为"avishay.cpp"的文件中,然后运行
gcc avishay.cpp
Run Code Online (Sandbox Code Playgroud)
仅从链接器获取以下错误消息.出了什么问题,我该怎么做?
carl@carl-ubuntu:~/Projects/StackOverflow$ gcc -static avishay.cpp
/tmp/cccRNW34.o: In function `__static_initialization_and_destruction_0(int, int)':
avishay.cpp:(.text+0x41): undefined reference to `std::ios_base::Init::Init()'
avishay.cpp:(.text+0x46): undefined reference to `std::ios_base::Init::~Init()'
/tmp/cccRNW34.o: In function `A::func()':
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x11): undefined reference to `std::cout'
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x16): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x1e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x26): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))'
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x36): undefined reference to `std::cout'
avishay.cpp:(.text._ZN1A4funcEv[A::func()]+0x3b): undefined reference …Run Code Online (Sandbox Code Playgroud) 给定变量的名称列表,我想将这些变量设置为表达式.
我试过这个:
(doall (for [x ["a" "b" "c"]] (def (symbol x) 666)))
Run Code Online (Sandbox Code Playgroud)
......但这会产生错误
java.lang.Exception:def的第一个参数必须是Symbol
有谁能告诉我正确的方法,请?
过去几天我一直在阅读很多关于Ruby的内容.我遇到的所有SO帖子都听说ruby是一种优雅的语言.你们能举个例子说明为什么红宝石比另一种语言更优雅?
我说的是Eclipse(3.5 = Galileo),在Kubuntu 9.10下运行,我有Subversive插件.
我已经从Gnome-Ubuntu转移到Kubuntu了,另一个副作用是现在有些字体太小而无法阅读.
资源管理器中的文件名大小合适,但文件夹以太小的字体显示,调整后General|Appearance|Colors and Fonts文件夹中的所有字体都保持不变.
也许我只是瞎了.如果有人能指出我可以在Package Explorer中调整文件夹字体的位置,我会很感激
我正在一个具有特色的环境中编写应用程序
+,-,*,/和余AND或的位操作OR.但由于一个人的补充,XOR相当于减法和NOT否定.IF/THEN/ELSEIF/ELSE/IF.理想情况下,我想要35或36位随机整数,但25位也足够了.
如果基于足够大的数字,我的线性同余生成器的天真实现会遇到溢出,并且当我使用较小的数字时,只生成少量的位.
因此,我正在寻找一组数字a,c,m,它们将产生约束中的最大位数,或者合理地调整LCG以组合2个或更多数字.
作为一个起点,这是我到目前为止所使用的:
*DEFINE NextRandom . min,max resultVar
* . This is a very shitty RNG. The numbers were never checked
* . for suitability for a long-period linear congruential generator.
* . But it yields numbers that look vaguely random.
*CLEAR rq
*CLEAR rr
*SET RandZ = RandZ * 169687 …Run Code Online (Sandbox Code Playgroud) 我正在努力通过人工智能:现代方法,以减轻我的自然愚蠢.在尝试解决一些练习时,我遇到了"谁拥有斑马"问题,第5章练习5.13 .这是一个关于SO的主题,但回答主要是针对"如果您可以自由选择解决问题的软件,您将如何解决这个问题?"
我接受Prolog是一种非常适合这类问题的编程语言,并且有一些很好的软件包可用,例如在Python中,如排名靠前的答案所示,也是独立的.唉,这一切都没有帮助我以书中概述的方式"强硬".
本书似乎建议构建一组双重或全局约束,然后实现一些提到的算法以找到解决方案.我遇到了一系列适用于建模问题的约束,我遇到了很多麻烦.我正在研究这个问题,所以我无法接触到教授或TA让我超过驼峰 - 这就是我要求你帮助的地方.
我认为本章中的例子几乎没有相似之处.
我渴望建立双重约束,开始了创建(逻辑等价)25个变量:nationality1,nationality2,nationality3,... nationality5,pet1,pet2,pet3,... pet5,drink1... drink5等等,其中数字是表示房子的的位置.
这对于构建一元约束是很好的,例如
挪威人住在第一宫:
nationality1 = { :norway }.
Run Code Online (Sandbox Code Playgroud)
但是大多数约束是通过共同的门牌号码组合两个这样的变量,例如
瑞典人有一条狗:
nationality[n] = { :sweden } AND pet[n] = { :dog }
Run Code Online (Sandbox Code Playgroud)
n显然,在哪里可以从1到5.或者说另一种方式:
nationality1 = { :sweden } AND pet1 = { :dog }
XOR nationality2 = { :sweden } AND pet2 = { :dog …Run Code Online (Sandbox Code Playgroud) 我开始和Maven合作,但还没有成功地用Maven的话来思考.我有一个特定的要求,文档没有给我足够的线索,所以我可以使用一些帮助:
我想创建一个组件
构建jar-with-dependencies类似此名称的"标准"目标,但不包括几个资源.我想log4j.properties和其他几个配置文件不在 jar中.
构建一个.ZIP包含在其根目录中的文件,.jar从步骤1以及上面提到的配置文件.
我想从命令行(仅)启动此程序集,因此无需绑定到阶段(或目标?mojo?).优选使用assembly:assembly或assembly:single.
pom.xml?所以它进入src/assembly/something.xml并被引用descriptorRef?