Hibernate 具有数据库连接的Java应用程序作为windows服务

Hibernate 具有数据库连接的Java应用程序作为windows服务,hibernate,tomcat,service,sessionfactory,Hibernate,Tomcat,Service,Sessionfactory,我正在尝试使用Tomcat7将java应用程序作为windows服务运行。在这个应用程序中,我使用Hibernate与MySql建立了数据库连接。当我运行tomcat时,它停在这行: SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); 我在WEB-INF\lib目录中有hibernate的所有必要JAR。 从eclipse运行此应用程序时,其运行良好。 这是run.bat

我正在尝试使用Tomcat7将java应用程序作为windows服务运行。在这个应用程序中,我使用Hibernate与MySql建立了数据库连接。当我运行tomcat时,它停在这行:

SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); 
我在WEB-INF\lib目录中有hibernate的所有必要JAR。 从eclipse运行此应用程序时,其运行良好。 这是run.bat文件:

cd "c:\Users\sl300\Project\temp3\build\classes"
temp3.exe //IS//temp3 ^
--Install="c:\Users\sl300\Project\temp3\build\classes\temp3.exe" ^
--Description="My Watcher Service" ^
--Jvm=auto ^
--Classpath="c:\Users\sl300\Project\temp3\build\classes" ^
--StartMode=jvm --StartClass=ServiceControl ^
--StartMethod=windowsService ^
--StartParams=start ^
--StopMode=jvm ^
--StopClass=ServiceControl ^
--StopMethod=windowsService ^
--StopParams=stop ^
--LogPath="c:\Users\sl300\Project\temp3\logs" ^
--StdOutput=auto ^
--StdError=auto 
temp3w //MS//

我需要做什么才能使这项工作正常?

有关如何将Tomcat配置为Windows服务的详细手册,请访问。这会解决你的问题

它仅在中提供,而不是在通用中提供

编辑:这不是答案,但我确实想停止在coments部分聊天:

  • 为什么您的
    temp3.exe
    位于文件夹
    …build/classes
    ,这对我来说没有意义
  • 为什么要将其重命名为
    temp3.exe

  • 没有可用的日志文件吗?我打赌hibernate找不到它的配置。。。你使用嵌入式tomcat吗?我得到了这个错误:java.lang.NoClassDefFoundError:org/hibernate/SessionOk,这就是我的想法。hinternate类在类路径中不可用,我猜tomcat类也不可用。如果不使用嵌入式tomcat,则必须重新编写该文件。查看
    tomcat/bin
    文件夹和相应的启动脚本。好的,我将所有JAR移动到“c:\Program Files\Apache Software Foundation\tomcat 7.0\lib”中,所有tomcat JAR都在这里,并在run.bat文件中对此进行了更改:“--Classpath=“c:\Program Files\Apache Software Foundation\tomcat 7.0\lib”^”它仍然给我同样的错误你看了我的答案了吗。试试看。tomcat也有引导类路径指向
    tomcat/bin
    .thx中的JAR,但我确实找到了一种方法。我将我的项目导出到一个jar文件,并将tomcat.exe与run.bat文件一起插入其中。非常感谢。