0

我有春季申请。我在使用时看到不同的行为

1 -

运行为-> jUnit 测试

在应用程序

这是好作品。

2-

运行为-> Maven 测试

在万无一失的报告中,我看到了很长的痕迹。原因:

java.lang.NoClassDefFoundError: Lcom/epam/hhsystem/util/DatabaseHelper;

我怎么知道什么配置使用了 Maven?

我在 Spring Tool Suite 中开发

更新

如果我尝试

Project -> Clean

之后

mvn clean test从 cmd 我看到

C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI>mvn clean test
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building hhsystem ui 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ ui ---
[INFO] Deleting C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\target
[INFO]
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ ui ---
[debug] execute contextualize
[WARNING] Using platform encoding (Cp1251 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ ui ---
[WARNING] File encoding has not been set, using platform encoding Cp1251, i.e. build is platform dependent!
[INFO] Compiling 11 source files to C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] bad path element "": no such file or directory
C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyContextListener.java:[8,29]
 cannot find symbol
symbol  : class DatabaseHelper
location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyContextListener.jav
a:[12,1] cannot find symbol
symbol  : class DatabaseHelper
location: class com.epam.hhsystem.web.controllers.MyContextListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyApplicationListener
.java:[10,29] cannot find symbol
symbol  : class DatabaseHelper
location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyApplicationListener
.java:[16,1] cannot find symbol
symbol  : class DatabaseHelper
location: class com.epam.hhsystem.web.controllers.MyApplicationListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\ApplicationWebListene
r.java:[9,29] cannot find symbol
symbol  : class DatabaseHelper
location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\ApplicationWebListene
r.java:[14,1] cannot find symbol
symbol  : class DatabaseHelper
location: class com.epam.hhsystem.web.controllers.ApplicationWebListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[12,23] package org.apache.log4j does not exist
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[24,16] cannot find symbol
symbol  : class Logger
location: class com.epam.hhsystem.web.controllers.CustomAuthentificationProvider
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\AbstractController.ja
va:[49,20] cannot find symbol
symbol  : method getAllSkills()
location: class com.epam.hhsystem.services.UtilService
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[24,32] cannot find symbol
symbol  : variable Logger
location: class com.epam.hhsystem.web.controllers.CustomAuthentificationProvider
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[59,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[63,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[64,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[65,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[66,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\VacancyMenuController
.java:[79,20] cannot find symbol
symbol  : method getAllSkills()
location: class com.epam.hhsystem.services.UtilService
[INFO] 16 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.059s
[INFO] Finished at: Wed Oct 23 18:52:14 MSK 2013
[INFO] Final Memory: 21M/162M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.5.1:compile (default-compile) on project ui:
 Compilation failure: Compilation failure:
[ERROR] bad path element "": no such file or directory
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyContextListener.jav
a:[8,29] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyContextListener.jav
a:[12,1] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: class com.epam.hhsystem.web.controllers.MyContextListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyApplicationListener
.java:[10,29] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\MyApplicationListener
.java:[16,1] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: class com.epam.hhsystem.web.controllers.MyApplicationListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\ApplicationWebListene
r.java:[9,29] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: package com.epam.hhsystem.util
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\ApplicationWebListene
r.java:[14,1] cannot find symbol
[ERROR] symbol  : class DatabaseHelper
[ERROR] location: class com.epam.hhsystem.web.controllers.ApplicationWebListener
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[12,23] package org.apache.log4j does not exist
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[24,16] cannot find symbol
[ERROR] symbol  : class Logger
[ERROR] location: class com.epam.hhsystem.web.controllers.CustomAuthentificationProvider
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\AbstractController.ja
va:[49,20] cannot find symbol
[ERROR] symbol  : method getAllSkills()
[ERROR] location: class com.epam.hhsystem.services.UtilService
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[24,32] cannot find symbol
[ERROR] symbol  : variable Logger
[ERROR] location: class com.epam.hhsystem.web.controllers.CustomAuthentificationProvider
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[59,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[63,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[64,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[65,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\CustomAuthentificatio
nProvider.java:[66,17] [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
[ERROR] C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI\src\main\java\com\epam\hhsystem\web\controllers\VacancyMenuController
.java:[79,20] cannot find symbol
[ERROR] symbol  : method getAllSkills()
[ERROR] location: class com.epam.hhsystem.services.UtilService
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
C:\Users\Nikolay_Tkachev\workspace\HHSystem\UI>
4

1 回答 1

1

您需要了解 Maven 生命周期。通过运行 maven test,您正在运行构建周期 maven 的验证、编译和测试阶段。

您可以检查您的 Maven 依赖项管理,以确保该类java.lang.NoClassDefFoundError: Lcom/epam/hhsystem/util/DatabaseHelper 位于包含测试用例的项目的 Maven 托管依赖项中。

构建周期

  1. 验证- 验证项目是否正确并且所有必要的信息都可用
  2. compile - 编译项目的源代码
  3. 测试- 使用合适的单元测试框架测试编译的源代码。这些测试不应该要求打包或部署代码
  4. package - 获取编译后的代码并将其打包成可分发的格式,例如 JAR。
  5. 集成测试- 如有必要,将包处理并部署到可以运行集成测试的环境中
  6. 验证- 运行任何检查以验证包是否有效并符合质量标准
  7. install - 将包安装到本地存储库中,作为本地其他项目的依赖项
  8. 部署- 在集成或发布环境中完成,将最终包复制到远程存储库以与其他开发人员和项目共享。

Maven 生命周期:http ://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

于 2013-10-23T14:20:35.447 回答