请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

JAVAApI无法调用Hadoop,一直提示无法实例化

Error:(29, 27) java: java.nio.file.Path是抽象的; 无法实例化

Error:(38, 25) java: javax.security.auth.login.Configuration是抽象的; 无法实例化

Error:(39, 32) java: 找不到符号

  符号:   方法 get(java.net.URI,javax.security.auth.login.Configuration,java.lang.String)

  位置: 类 java.nio.file.FileSystem

//img1.sycdn.imooc.com//szimg/5acefca3000138d708770719.jpg

https://img1.sycdn.imooc.com//szimg/5acf0d7c0001ca1311090799.jpg

正在回答 回答被采纳积分+3

3回答

Michael_PK 2018-04-12 14:54:36

Error:(38, 25) java: javax.security.auth.login.Configuration是抽象的; 无法实例化
Error:(39, 32) java: 找不到符号
  符号:   方法 get(java.net.URI,javax.security.auth.login.Configuration,java.lang.String)
  位置: 类 java.nio.file.FileSystem

这都是什么包啊。。。。导入到时候仔细点。。。

0 回复 有任何疑惑可以回复我~
  • 提问者 Allowed_0 #1
    导包可以了,还是会出现一系列的问题
    回复 有任何疑惑可以回复我~ 2018-04-12 15:18:40
  • Michael_PK 回复 提问者 Allowed_0 #2
    现在还有什么问题
    回复 有任何疑惑可以回复我~ 2018-04-12 15:38:40
  • 提问者 Allowed_0 回复 Michael_PK #3
    无法运行,配图了
    回复 有任何疑惑可以回复我~ 2018-04-12 15:41:05
Michael_PK 2018-04-12 13:06:51

你的file system包导错了吧。。。

0 回复 有任何疑惑可以回复我~
  • 提问者 Allowed_0 #1
    public class HDFSApp {
    
        public static final String HDFS_PATH = "hdfs://hadoop:8020";
    
        FileSystem fileSystem = null;
        Configuration configuration = null;
    
        /**
         * 创建HDFS目录
         * */
        @Test
        public void mkdir() throws Exception {
            fileSystem.mkdirs(new Path("/hdfsapi/test"));
        }
    
    
        @Before
        public void setUp() throws Exception {
    
            System.out.println("HDFSApp.setUp");
    
            configuration = new Configuration();
            fileSystem = FileSystem.get(new URI(HDFS_PATH), configuration, "hadoop");
    
    
        }
    
        @After
        public void tearDown() throws Exception {
    
            configuration = null;
            fileSystem = null;
    
            System.out.println("HDFSApp.tearDown");
        }
    
    }
    回复 有任何疑惑可以回复我~ 2018-04-12 14:26:49
  • 提问者 Allowed_0 #2
    public class HDFSApp {
    
        public static final String HDFS_PATH = "hdfs://hadoop:8020";
    
        FileSystem fileSystem = null;
        Configuration configuration = null;
    
        /**
         * 创建HDFS目录
         * */
        @Test
        public void mkdir() throws Exception {
            fileSystem.mkdirs(new Path("/hdfsapi/test"));
        }
    
    
        @Before
        public void setUp() throws Exception {
    
            System.out.println("HDFSApp.setUp");
    
            configuration = new Configuration();
            fileSystem = FileSystem.get(new URI(HDFS_PATH), configuration, "hadoop");
    
    
        }
    
        @After
        public void tearDown() throws Exception {
    
            configuration = null;
            fileSystem = null;
    
            System.out.println("HDFSApp.tearDown");
        }
    
    }
    回复 有任何疑惑可以回复我~ 2018-04-12 14:27:49
Michael_PK 2018-04-12 13:06:24

请贴出代码

0 回复 有任何疑惑可以回复我~
  • 提问者 Allowed_0 #1
    @Test
        public void mkdir() throws Exception {
            fileSystem.mkdirs(new Path("/hdfsapi/test"));
        }
    回复 有任何疑惑可以回复我~ 2018-04-12 13:22:02
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信