我有一个Java应用程序。我创建了一个OSGi包,并在Activator.start中添加了MyMain Class.main()。应用程序已启动,但它有数据库连接问题。 'java.sql.SQLException:客户端尝试签出连接已超时。 如果我作为应用程序启动我的应用程序它工作正常。 怎么了? 非常感谢!
答案 0 :(得分:0)
不确定您做了什么,但在使用OSGi时不需要主方法。一个主要的方法是启动你的程序,在这种情况下是OSGi容器,而不是你的代码。容器将通过运行Activator类来运行代码,在这里,您可以实例化您自己的应用程序特定对象,并调用适当的任何方法。
由于你没有发布代码(你应该),我只能猜测你是在主方法而不是普通方法中创建数据库连接,这就是为什么它不起作用,因为主要不是调用。