我无法弄清楚如何对java spark app进行单元测试...
我在这里进行了一个简单的测试,但杰克逊的例外却失败了.我也尝试将主人设置为"本地"
private JavaSparkContext sparkCtx;
@Before
public void init() throws IllegalArgumentException, IOException {
//ctxtBuilder = new ContextBuilder(tempFolder);
SparkConf conf = new SparkConf();
conf.setMaster("local[2]");
conf.setAppName("junit");
sparkCtx = new JavaSparkContext(conf);
}
@Test
public void test() {
final List<Integer> nums = new ArrayList<Integer>();
nums.add(3);
nums.add(4);
nums.add(2);
JavaRDD<Integer> rdd = sparkCtx.parallelize(nums,1);
assertEquals(3, rdd.count());
}
Run Code Online (Sandbox Code Playgroud)
例外
java.lang.VerifyError: class com.fasterxml.jackson.module.scala.ser.ScalaIteratorSerializer overrides final method withResolved.(Lcom/fasterxml/jackson/databind/BeanProperty;Lcom/fasterxml/jackson/databind/jsontype/TypeSerializer;Lcom/fasterxml/jackson/databind/JsonSerializer;)Lcom/fasterxml/jackson/databind/ser/std/AsArraySerializerBase;
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361) …Run Code Online (Sandbox Code Playgroud) 我有一个简单的awk程序:
#!/usr/bin/awk -f
BEGIN {print "work already!"}
Run Code Online (Sandbox Code Playgroud)
如果我运行它:
awk -f panic
Run Code Online (Sandbox Code Playgroud)
在(osx)终端上它可以工作.但是如果我尝试将其作为脚本运行它会失败:
. panic
-bash: BEGIN: command not found
Run Code Online (Sandbox Code Playgroud)
我检查了awk使用的位置,which awk它确实位于/usr/bin/awk.任何想法为什么它不起作用?
我正在尝试在我的mac pro上自动启动mysql 5.5.10社区服务器(gpl).我在这个论坛上看过几个主题.我仍然感到困惑,因为那些线程引用了一个文件:
/Library/StartupItems/MySQLCOM
Run Code Online (Sandbox Code Playgroud)
我似乎没有这个文件或文件夹.
有人可以请帮助.
顺便说一句,我可以使用mysqld启动mysql ...它工作正常.
提前致谢!
我已经定义了一个ClientBundle,一个Style接口,并通过@source注释将其与我的css文件连接起来.
我有两个问题:
当我<ui:with>在我的uibinder文件中使用时,我得到以下异常:Deferred binding result type MyStyle should not be abstract. 有人可以解释发生了什么吗?以及如何在我的uibinder文件中正确包含样式?
我想在许多uibinder上分享资源,而不必每次都支付初始化样式的惩罚.Gwt的贫血开发指南,建议使用UiField(provided=true)或使用@uiFactory.虽然我已成功使用@uiFactory来使用我自己的自定义小部件.我不知道如何使用@uiFactory将样式注入uiBinder.
例如:
//in pojo
@UiFactory
public MyStyle getMyStyle() {
return myStyle;
}
//in uibinder
<g:Label addStyleNames="{myStyle.defaultLable}"/>
Run Code Online (Sandbox Code Playgroud)
我怎么能得到这个工作?
提前致谢.
一个目录中可以有两个oozie workflow.xml文件吗?
如果是这样,我怎样才能指导oozie跑步者跑哪一个?
我明白为什么 scan.setCaching 对 mapreduce 作业有好处,但我不明白为什么 setCacheBlocks(false) 不好。它是否使服务器负担过重?
PowerShell和.NET新手.
可以配置 PowerShell控制台颜色.
但是,我如何设置窗口的不透明度.似乎InternalHostRawUserInterface该类的属性采用枚举ConsoleColor.
是否可以设置窗口透明度?
我已经开始了一个GWT项目,我决定试试UiBinder.我很难在UiBinder上面放置一个MVP模式.
当我使用GWT-pure-java时:我会使用Gin为我的演示者注入相应的视图.这是非常直接的,如果我想将一个id传递给演示者,那么我只需将一个id传递给演示者的构造函数.
与UiBinder不太直接.我几乎可以肯定我错过了一些东西,因为很多人都声称UiBinder和MVP是在天堂做的比赛......所以我希望能在这个问题上得到一些坚实的回答;-)
我在几个简单的GWT-UiBinder示例中看到的是,视图是由绑定器创建的,然后是:
@UIFactory方法构造演示者.使用第一种方法,如果在视图中构建演示者,如何将id传递给演示者?你会这样做view.getPresenter().setId(42);,然后主持人会去服务器获取一些信息,并要求视图显示它......闻起来很糟糕.
使用第二种方法,最终会得到一个非直观的对象图,其中不清楚谁是消费者,谁是生产者.此外,在视图需要来自演示者的信息(几乎所有用例都需要此信息)的情况下,人们会做什么:
//some code would create the presenter pass it the id and then call view.setPresenter
class MyView {
void setPresenter(MyPresenter p) {
this.presenter = p;
//OK now that i have my presenter how do I ask it to fetch data from the server.
//do i turn around and do: presenter.setView(this); and then the presenter takes
//over and uses the view to display the data?
}
}
Run Code Online (Sandbox Code Playgroud)
这同样很臭......很抱歉这篇长篇文章,并提前感谢...
NodeJS新手.通过承诺教程('promise-it-wont-hurt')我有以下脚本:
var Q = require('q');
var deferred = Q.defer();
deffered.resolve('SECOND');
deffered.promise.then(console.log);
console.log('FIRST');
Run Code Online (Sandbox Code Playgroud)
输出:
FIRST
SECOND
Run Code Online (Sandbox Code Playgroud)
我不明白,我会想到,既然已经解决了,那么我应该先看到第二个.
他们解释说,这是因为"Promise在事件循环的同一转弯时触发".我不明白这意味着什么......
我有一个使用 Flume 向 HDFS 发送 log4j 消息的玩具设置。我无法配置 hdfs 接收器以避免出现许多小文件。我以为我可以配置 hdfs 接收器在每次文件大小达到 10mb 时创建一个新文件,但它仍然创建大约 1.5KB 的文件。
这是我当前的水槽配置:
a1.sources=o1
a1.sinks=i1
a1.channels=c1
#source configuration
a1.sources.o1.type=avro
a1.sources.o1.bind=0.0.0.0
a1.sources.o1.port=41414
#sink config
a1.sinks.i1.type=hdfs
a1.sinks.i1.hdfs.path=hdfs://localhost:8020/user/myName/flume/events
#never roll-based on time
a1.sinks.i1.hdfs.rollInterval=0
#10MB=10485760
a1.sinks.il.hdfs.rollSize=10485760
#never roll base on number of events
a1.sinks.il.hdfs.rollCount=0
#channle config
a1.channels.c1.type=memory
a1.channels.c1.capacity=1000
a1.channels.c1.transactionCapacity=100
a1.sources.o1.channels=c1
a1.sinks.i1.channel=c1
Run Code Online (Sandbox Code Playgroud) 我怎样才能File myTempDir = Files.createTempDir(Path path, String prefix, FileAttribute)在windows中使用它.
我正在使用java 7.在linux上,我可以为第3个参数传递PosixFilePermissions.asFileAttributes.
什么是Windows的等效fileAttributes.
我认为这个方法总是需要一个fileAttribute对象.我可以传入一个空的fileAttribute吗?