Java Classpath中的正斜杠是什么?

时间:2017-06-29 11:51:43

标签: java jar classpath

好的,我对类路径和jar有很多困惑。我有一个可运行的jar,它正在访问一个包含jar外部属性文件的文件夹。现在我无法理解的是,为什么我需要使用如下的正斜杠来访问资源 - :

@Configuration
public class AuthConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    private UserDetailsService userDetailsService;

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(userDetailsService).passwordEncoder(new BCryptPasswordEncoder());
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        super.configure(http);
        http.csrf().disable();

    }
}

正斜线是什么意思?这是否意味着从类路径的根开始?不是默认情况会发生什么吗?

在使用以下行运行jar之前,我已经修改了清单文件中的类路径 -

InputStream s = (InputStream)
                    Foo.class.getResourceAsStream("/bar.properties"); 

我需要在文件夹的末尾加斜线,否则它无法正常工作。那么为什么清单文件和getResourceAsStream调用都需要正斜杠?

0 个答案:

没有答案