当前位置: 首页 > 知识库问答 >
问题:

Sprint启动应用程序无法部署在外部虚拟机中。当我尝试加载应用程序时抛出HTTP 404

龚盛
2023-03-14
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [com.controller.Application]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/application.properties]
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.web.SpringBootServletInitializer;
import org.springframework.boot.orm.jpa.EntityScan;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.PropertySource;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.view.InternalResourceViewResolver;



@Configuration
@ComponentScan(basePackages="com.abc")
@EnableJpaRepositories("com.abc.repository")
@Import(RepositoryRestMvcConfiguration.class)
@EnableAutoConfiguration
@PropertySource("application.properties")
@EntityScan("com.abc.pojo")

public class Application extends SpringBootServletInitializer {
@Autowired
private LdapDAO ldapDao;

@Autowired
private HoursService hoursService;
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);         
    }   

}

共有1个答案

罗均
2023-03-14

普尔纳,

基于SpringBoot指定的加载顺序和位置:

Spring Boot按照以下顺序解析外部配置文件,如“application.properties”或“application.yml”:

当前目录的/config子目录。

根据这些信息,您的application.properties文件应该位于类路径中的/config目录中。因此,如果您将它放在WEB-INF/classes中,这将是类路径的一部分,则应该将其移动到:

/WEB-INF/classes/config/application.properties。

@PropertySource(“classpath:config/application.properties”)

这里似乎还有一些相关信息:Tomcat没有读取Spring-Boot应用程序属性。除了我已经描述的内容之外,最相关的一点是Tomcat可以区分大小写。

确保属性文件的名称为:application.properties而不是application.properties

 类似资料:
  • 同时在WebLogic12c中部署应用程序。我有个例外。我是weblogic12c的新手。有什么建议吗??

  • 背景: 我正在用Xamarin.Forms创建一个内部移动应用程序,通过WebLink分发。我已经在Android和iOS上运行了几天了,但请求的是推送通知。我们决定和Pushwoosh一起提供这项服务。 我已经从pushwoosh复制了示例代码,并用我们的包名和密钥对其进行了修改,但由于某种原因,我得到了错误: 我还应该注意到Pushwoosh使用了GCM,所以它也可能与此相关。 我尝试的内容:

  • 错误:命令错误,退出状态为1:Command://app/.heroku/python/bin/python/app/.heroku/python/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel/tmp/tmp3b4z4ntu cwd://tmp/pip-i

  • 我试图将spring boot应用程序部署到外部tomcat,在catalina.log文件中出现如下异常。 war文件名为:com#myapp.war。

  • 多年来,我一直在这个网站上看到有人问这个问题,但没有一个解决方案对我有效。我正在尝试使用AWS Elastic Beanstalk启动spring boot应用程序。我得到了“502坏网关nginx/1.20.0”错误,许多其他人都得到了。查看我的日志,上面写着“连接()失败(111:连接被拒绝),同时连接到上游,客户端:172.31.16.189,服务器:,请求:“GET/HTTP/1.1”,上

  • 问题内容: 我正在编写一个使用node.js访问本地文件系统的桌面Web应用程序。我目前可以使用node.js打开文件并将其复制到硬盘驱动器上的不同位置。我还想做的是允许用户使用与文件类型关联的应用程序打开特定文件。换句话说,如果用户在Windows环境中选择“ myfile.doc”,它将使用该文件启动MSWord。 我一定是术语的受害者,因为除了与node.js进行通信的子进程的生成之外,我什