就这么简单,如何在Perl6中读取STDIN的输入?
我认为有很多方法可以做到这一点,但我对最惯用的Perl6解决方案很感兴趣.
我正在使用dzil开发我的Net :: Prober发行版.从下一个版本开始,我想强制执行perl 5.10+的最低要求(为5.006),因为我正在使用命名捕获:-)
现在我把它放在use 5.010;我的主模块的顶部,这很好,但我想知道:有没有办法在dist.ini文件中指定最小的perl解释器版本?
我的当前dist.ini是:
name    = Net-Prober
version = 0.07
...
[Prereqs]
Carp = 0
Data::Dumper = 0
Digest::MD5 = 0
IO::Socket::INET = 0
IO::Socket::SSL = 0
IO::Socket::UNIX = 0
LWPx::ParanoidAgent = 0
Net::Ping = 2.34
Sys::Syslog = 0
[Prereqs / TestRequires]
Test::More = 0
LWP::Online = 0
...
Run Code Online (Sandbox Code Playgroud)
我可以添加perl = 5.010到[Prereq]块中吗?
我知道我可以使用perl6不带参数来启动一个最小的REPL shell,但我缺少标签完成,readline功能,对象检查等...所以我想知道是否有一个更好的REPL shell,如IPython for Python或Reply对于Perl 5.
运行时perl6,我收到以下警告:
$ perl6
I ran into a problem while trying to set up REPL completions:
Continuing without tab completions
Run Code Online (Sandbox Code Playgroud)
但我不知道如何解决这个问题.
尝试-v开关,我得到了鹦鹉svn版本:
$ perl6 -v
This compiler is built with the Parrot Compiler Toolkit, parrot revision 45822.
Run Code Online (Sandbox Code Playgroud)
但我怎么知道rakudo版本,a vx.xx或{some-git-hash}?
谢谢,
我正在编写一个基本的行星查看器OpenGL Perl应用程序,只是为了好玩.我有基本的工作,与辉煌的星球,通过gluSphere()旋转与经典的地球纹理贴图应用.
现在,如果我想通过OpenGL应用第二个纹理贴图(比如"地球云")怎么办?
当然,我可以在PhotoShop或其他一些图形应用程序中自己混合两个纹理贴图,但有没有办法通过OpenGL API?
我尝试加载两个纹理并生成mipmap但是行星显示时只应用了第一个纹理,而不是第二个.
在我们的一个模块中,我们检查给定的二进制(varnishd)是否存在,如果存在,我们运行其他测试.
为了执行检查,我们正在使用IPC::Open3,如下所示(示例为了清晰起见而被剥离):
perl -MIPC::Open3 -le '
    my $binary = "varnishd";
    my $pid = IPC::Open3::open3(my($in, $out), undef, $binary, "-V");
    waitpid $pid, 0; print $?'
Run Code Online (Sandbox Code Playgroud)
在Debian Squeeze或Ubuntu Natty下,使用perl 5.10.1,如果varnishd在系统上找不到,则会打印出来65280.如果更改$binary为perl,则(正确)打印0.
但是,使用Ubuntu Precise和perl 5.14.2,这不再以相同的方式工作,并产生以下结果:
$ perl -MIPC::Open3 -le '
    my $binary = "varnishd";
    my $pid = IPC::Open3::open3(my($in, $out), undef, $binary, "-V");
    waitpid $pid, 0; print $?'
open3: exec of varnishd -V failed at -e line1
Run Code Online (Sandbox Code Playgroud)
$binary …
我有一个正在使用 jetty-server version 的工作应用程序9.4.15.v20190215。由于在 jetty-server 依赖项中发现问题的漏洞扫描,我考虑升级我的应用程序以使用 jetty-server9.4.19-v20190610,这是我撰写本文时的最新版本。
我尝试再次编译应用程序,但在启动过程中出现此错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/jetty/util/ssl/SslContextFactory$Client
    at org.eclipse.jetty.websocket.client.HttpClientProvider.get(HttpClientProvider.java:49)
    at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:261)
    at org.eclipse.jetty.websocket.jsr356.ClientContainer.<init>(ClientContainer.java:140)
    at org.eclipse.jetty.websocket.jsr356.server.ServerContainer.<init>(ServerContainer.java:94)
    at org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer.configureContext(WebSocketServerContainerInitializer.java:152)
    at it.kahoot.merlin.jetty.JettyServer.main(JettyServer.java:53)
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.ssl.SslContextFactory$Client
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 6 more
Run Code Online (Sandbox Code Playgroud)
我了解班级 org.eclipse.jetty.util.ssl.SslContextFactory$Client再也找不到了。
我该如何进行?