Tomcat在Linux环境下启动异常 java.net.UnknownHostException: HP_MAIN12: HP_MAIN12

刚开发完一个项目,在本地部署的时候没有任何异常,到Linux系统就出现这样那样的问题,下面就是其中一个:
Tomcat在Linux平台下启动的时候抛出java.net.UnknownHostException: HP_MAIN12: HP_MAIN12异常:
2014-01-09 11:04:26,609  WARN (ConfigurationFactory.java:136) No configuration found. Configuring ehcache from ehcache-failsafe.xml  found in the classpath: jar:file:/home/jbxx/product/apache-tomcat-6.0.35/webapps/infocms/WEB-INF/lib/ehcache-core-2.6.3.jar!/ehcache-failsafe.xml
2014-01-09 11:04:26,696 ERROR (Cache.java:215) Unable to set localhost. This prevents creation of a GUID. Cause was: HP_MAIN12: HP_MAIN12:
java.net.UnknownHostException: HP_MAIN12: HP_MAIN12
    at java.net.InetAddress.getLocalHost(InetAddress.java:1426)
    at net.sf.ehcache.Cache.<clinit>(Cache.java:213)
    at net.sf.ehcache.config.ConfigurationHelper.createCache(ConfigurationHelper.java:296)
    at net.sf.ehcache.config.ConfigurationHelper.createDefaultCache(ConfigurationHelper.java:219)
    at net.sf.ehcache.CacheManager.configure(CacheManager.java:722)
    at net.sf.ehcache.CacheManager.doInit(CacheManager.java:439)
    at net.sf.ehcache.CacheManager.init(CacheManager.java:377)
    at net.sf.ehcache.CacheManager.<init>(CacheManager.java:259)
    at net.sf.ehcache.CacheManager.newInstance(CacheManager.java:1037)
    at net.sf.ehcache.CacheManager.newInstance(CacheManager.java:818)
    at net.sf.ehcache.CacheManager.create(CacheManager.java:799)
    at net.sf.ehcache.CacheManager.getInstance(CacheManager.java:833)
    at org.springframework.cache.ehcache.EhCacheFactoryBean.afterPropertiesSet(EhCacheFactoryBean.java:310)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)
    ... ...
HP_MAIN12是你Linux机器名称,这个异常好像对程序没有多大影响。
异常出现的原因是在项目中引用的ehcache-core-2.6.3.jar缓存包,缓存需要将数据存放在本机,则使用了InetAddress.getLocalHost()获得本机方法。在Linux操作系统中,都是以/etc/hosts中的配置查找主机名的,使用hostname查看本机名称,若本机名称不是一个IP地址, 比如是"sohu",则必须在/etc/hosts中配置sohu对应本机IP,否则java.net.InetAddress.getLocalHost会抛出java.net.UnknownHostException异常。
解决的办法也很简单:
在/etc/hosts里加一行 本机IP mName
127.0.0.1   HP_MAIN12
问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值