如何在Ubuntu 16.04上安装/设置UIMA DUCC?

时间:2016-10-27 08:01:41

标签: uima ducc

我对UIMA DUCC完全不熟悉。我正在尝试首次安装/设置UIMA DUCC(在Ubuntu 16.04上)并且面临在@ https://cwiki.apache.org/confluence/display/UIMA/DUCC#DUCC-t0给出命令的问题 因为它是特定的Redhat。

执行 ./start_ducc ;

时发生以下异常

异常

ducc@s4cchinpc408:~/apache-uima-ducc-2.0.0/admin$ ./start_ducc 
Merging /home/ducc/apache-uima-ducc-2.0.0/resources/default.ducc.properties with /home/ducc/apache-uima-ducc-2.0.0/resources/site.ducc.properties into /home/ducc/apache-uima-ducc-2.0.0/resources/ducc.properties
Set ducc_ling version from s4cchinpc408 : /home/ducc/apache-uima-ducc-2.0.0/admin/amd64/ducc_ling -v >/home/ducc/apache-uima-ducc-2.0.0/state/duccling.version
JVM: /usr/bin/java
ENV: Java is configured as: /usr/bin/java
ENV java full version "1.7.0_80-b15"
ENV: Threading enabled: True
MEM: memory is 7 gB
ENV: system is Linux
allnodes /home/ducc/apache-uima-ducc-2.0.0/resources/ducc.nodes
Class definition file is ducc.classes
java.net.UnknownHostException: s4cchinpc408: s4cchinpc408: Temporary failure in name resolution
at java.net.InetAddress.getLocalHost(InetAddress.java:1475)
at org.apache.uima.ducc.common.NodeConfiguration.getDomainName(NodeConfiguration.java:215)
at org.apache.uima.ducc.common.NodeConfiguration.readConfiguration(NodeConfiguration.java:990)
at org.apache.uima.ducc.common.NodeConfiguration.main(NodeConfiguration.java:1286)
Caused by: java.net.UnknownHostException: s4cchinpc408: Temporary failure in name resolution
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:901)
at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1295)
at java.net.InetAddress.getLocalHost(InetAddress.java:1471)
... 3 more
Exception in thread "main" java.lang.NullPointerException
at org.apache.uima.ducc.common.NodeConfiguration.getDomainName(NodeConfiguration.java:220)
at org.apache.uima.ducc.common.NodeConfiguration.readConfiguration(NodeConfiguration.java:990)
at org.apache.uima.ducc.common.NodeConfiguration.main(NodeConfiguration.java:1286)
NOTOK: Cannot validate class and/or node definitions.
NOTOK: Bad configuration, cannot start.

注意:

启动sshd - 无法在Ubuntu上完成。相反,我刚刚使用 apt-get install ssh

安装了ssh
[degenaro@oc4534203605 ~]$ sudo su root
[sudo] password for degenaro:
[root@oc4534203605 degenaro]# chkconfig sshd on
[root@oc4534203605 degenaro]# /sbin/service sshd restart
Stopping sshd:                                             [FAILED]
Starting sshd:                                             [  OK  ]
[root@oc4534203605 degenaro]# exit
exit
[degenaro@oc4534203605 ~]$

FYR: https://stackoverflow.com/questions/40277464/what-is-the-equivalent-command-for-chkconfig-sshd-on-in-ubuntu?noredirect=1#comment67815058_40277464

1 个答案:

答案 0 :(得分:0)

在ubuntu 16.04上运行DUCC为我工作。

  1. adduser ducc

  2. 下载ducc 2.1.0 .gz

  3. umask 022 + untar + ducc_post_install

  4. 安装ssh(尚未安装)

  5. https://linuxconfig.org/how-to-install-ssh-server-on-ubuntu-16-04-xenial-linux

    1. 启用无密码ssh
    2. https://askubuntu.com/questions/46930/how-can-i-set-up-password-less-ssh-login

      1. start_ducc
      2. =====

        为什么会收到UnknownHostException?这是一个小型的java程序,你可以在没有任何DUCC参与的情况下尝试:

        <强> TestMe.java

        package test;
        
        import java.net.InetAddress;
        import java.net.UnknownHostException;
        
        public class TestMe {
        
            private static String getDomainName()
            {
                InetAddress me = null;
                try {
                    me = InetAddress.getLocalHost();
                    String my_happy_name = me.getHostName();
                    String my_canonical_name = me.getCanonicalHostName();
                    if ( my_canonical_name.startsWith(my_happy_name) ) {
                        int ndx = my_canonical_name.indexOf(".");
                        return my_canonical_name.substring(ndx+1);
                    }
                } catch (UnknownHostException e1) {
                    e1.printStackTrace();
                }
                return null;
            }
        
            public static void main(String[] args) {
                System.out.println(getDomainName());
            }
        }
        

        娄。