В чем разница между запуском приложения из netbeans и запуском jar? - PullRequest
2 голосов
/ 25 октября 2011

У меня есть Java-приложение, которое отлично работает при запуске из Netbeans 7.1, но оно аварийно завершает работу, если я использую сборочный файл.

Я исследовал проблему и заметил, что приложение удерживает вызовDriverManager.getConnection ().

Я делаю что-то вроде:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
Connection con =   DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:2304;user=username;password=12345;database=databasename");

Я также пробовал jtds, но результат тот же.

Я работаю на Windows 7 Home Premium SQL Server 2008 (localhost) NetBeans 7.1 (приложение работает нормально при работе с NetBeans) Java версии 1.6

Дамп потока

java.lang.Exception: Stack trace
    at java.lang.Thread.dumpStack(Unknown Source)
    at joomlasyncrnzr.JoomlaSyncrnzrApp.getCon(JoomlaSyncrnzrApp.java:314)
    at joomlasyncrnzr.JoomlaSyncrnzrApp.taxas(JoomlaSyncrnzrApp.java:604)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.jdesktop.application.ApplicationAction.noProxyActionPerformed(Ap
licationAction.java:662)
    at org.jdesktop.application.ApplicationAction.actionPerformed(ApplicatinAction.java:698)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$000(Unknown Source)
    at java.awt.EventQueue$1.run(Unknown Source)
    at java.awt.EventQueue$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue$2.run(Unknown Source)
    at java.awt.EventQueue$2.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

Что может быть причиной этого?

Ответы [ 2 ]

1 голос
/ 27 октября 2011

У меня была такая же проблема с вызовом DriverManager.getConnection, который зависал бесконечно.

Что решило эту проблему для меня, так это возвращение к обновлению 25. Обновление 29, кажется, представляет ошибку при подключении JDBC к SQL Server. Я думаю, что обновление 27 (или ранее) все еще работает нормально.

0 голосов
/ 25 октября 2011

Возможно, вы не устанавливаете свой CLASSPATH для включения драйвера SQL Server при запуске файла JAR, тогда как Netbeans, вероятно, уже включил его для вас.

...