1

我制作了一个自动延迟为 50 的机器人,然后执行此操作。

for(int a=0;a<1000;a++;)
{
    Rectangle screenRect= new Rectangle(300,400);
    al.add(r.createScreenCapture(screenRect));
}
File outputfile = new File(output,"Test.mp4");
AWTSequenceEncoder enc = 
AWTSequenceEncoder.createSequenceEncoder(outputfile,20);
for (BufferedImage bi : al)
    enc.encodeImage(bi);
enc.finish();`

输出是我桌面的路径。这些是我得到的错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addTrack(MP4Muxer.java:91)
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addTrack(MP4Muxer.java:87)
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addVideoTrack(MP4Muxer.java:196)
    at org.jcodec.api.transcode.SinkImpl.outputVideoPacket(SinkImpl.java:69)
    at org.jcodec.api.transcode.SinkImpl.outputVideoFrame(SinkImpl.java:223)
    at org.jcodec.api.SequenceEncoder.encodeNativeFrame(SequenceEncoder.java:101)
    at org.jcodec.api.awt.AWTSequenceEncoder.encodeImage(AWTSequenceEncoder.java:49)
    at Test.main(Test.java:47)
    Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol
        symbol:   class Nullable
        location: package javax.annotation
             at org.jcodec.common.Preconditions.<clinit>(Preconditions.java:17)
             ... 8 more
4

1 回答 1

2
Uncompilable source code - cannot find symbol
        symbol:   class Nullable
        location: package javax.annotation

编译器找不到javax.annotation.Nullable。您正在使用Jcodec,这取决于Javax.annotation API,您似乎没有包括在内。你可以在这里找到它。

但是,您应该考虑使用Maven构建您的项目,它将为您处理此类依赖关系。如果隐藏了更多依赖项,我不会感到惊讶。

于 2018-01-18T14:44:16.770 回答