Spring Boot应用程序以退出代码1终止

我是Java新手,并启动了Spring应用程序。但是,当我在另一个类中实例化一个类并运行一个方法时,该方法不会输出。


调用该方法的类是SpringIn5StepsApplication.java,它看起来像:


package com.example.springin5steps;


import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;


@SpringBootApplication

public class SpringIn5StepsApplication {


    public static void main(String[] args) {


        BinarySearchImpl binarySearch = new BinarySearchImpl();

        int result = binarySearch.binarySearch(new int[] {12, 4, 6}, 3);


        System.out.println(result);


        SpringApplication.run(SpringIn5StepsApplication.class, args);

    }

}

BinarySearchImpl类如下所示:


package com.example.springin5steps;


public class BinarySearchImpl {

    public static void main(String[] args) {


    }

    public int binarySearch(int[] numbers, int numberToSearchFor) {

        return 3;

    }

}

在调用binarySearch方法时,预期的输出为3,但是当我运行程序时,什么也没有输出。我在做什么错,如何将3输出到IntelliJ?


慕森卡
浏览 654回答 2
2回答

慕田峪4524236

当您使用Spring时,您使用的是Dependency Injection,因此您不需要手动创建新实例,而是应该使用@Autowire,在描述的基础上,我看到您public static void main(String[] args)...在这两个类中都使用过,这仅在主类中使用,一个简单的解决方案是从中删除main方法BinarySearchImpl,该方法应如下所示:package com.example.springin5steps;public class BinarySearchImpl {    public int binarySearch(int[] numbers, int numberToSearchFor) {        return 3;    }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java