Note that there are some explanatory texts on larger screens.

plurals
  1. POCryptic pom.xml errors in a GWT/Maven project
    text
    copied!<p>I am a relative newcomer to the Java world from .NET, so I sometimes struggle with things that must seem obvious to experienced Java developers, but this problem has stumped even some of my grizzled co-workers.</p> <p>Here's my environment:</p> <ul> <li>JavaSE 1.6</li> <li>Eclipse Indigo SP2</li> <li>m2e plugin 1.1.0.201205-30-0009</li> <li>Google Suite plugin 2.5.2</li> <li>GWT Maven plugin 2.4</li> <li>Spring 1.1</li> </ul> <p>The main project uses GWT 2.4.0 and compiles and works fine by itself. I also have a custom DB logging project in the same workspace which also builds without any errors. I need to use the custom DB logging functionality in the main web app, so I add the former to the latter as a dependency using Maven, and that's where things break.</p> <p>After rebuilding the workspace Eclipse shows three cryptic errors in the main project's pom.xml:</p> <pre><code>null (org.apache.maven.plugins:maven-war-plugin:2.1.1:exploded:default:compile) pom.xml /TestApp line 67 Maven Build Problem null (org.codehaus.mojo:gwt-maven-plugin:2.4.0:compile:default:prepare-package) pom.xml /TestApp line 44 Maven Build Problem null (org.codehaus.mojo:gwt-maven-plugin:2.4.0:generateAsync:default:generate-sources) pom.xml /TestApp line 44 Maven Build Problem </code></pre> <p>Scroll down to the end of my question to see the entire pom.xml. The offending dependency is called <code>net.cds.cps.dao.logger</code> and can be found at the bottom of the dependency list.</p> <p>When pom.xml is opened in Eclipse the two <code>&lt;execution&gt;</code> nodes of plugins <code>gwt-maven-plugin</code> and <code>maven-war-plugin</code> are highlighted.</p> <p>The usual troubleshooting steps (cleaning the projects, disabling/enabling Maven's workspace dependency resolution, updating project configuration) have no effect on the errors. Changing the dependency version from 1.0.0 to a more specific 1.0.0.43 or a more generic range [1.0.0.0, 1.0.1.0) has no effect either.</p> <p>Does anybody have any suggestions as to how I can go about troubleshooting this problem?</p> <pre><code>001 &lt;?xml version="1.0" encoding="UTF-8"?&gt; 002 &lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 003 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"&gt; 004 005 &lt;!-- POM file generated with GWT webAppCreator --&gt; 006 &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; 007 &lt;groupId&gt;net.test.app&lt;/groupId&gt; 008 &lt;artifactId&gt;TestApp&lt;/artifactId&gt; 009 &lt;packaging&gt;war&lt;/packaging&gt; 010 &lt;version&gt;1.0.0&lt;/version&gt; 011 &lt;name&gt;Test App&lt;/name&gt; 012 013 &lt;properties&gt; 014 &lt;!-- Convenience property to set the GWT version --&gt; 015 &lt;gwtVersion&gt;2.4.0&lt;/gwtVersion&gt; 016 &lt;!-- GWT needs at least java 1.5 --&gt; 017 &lt;webappDirectory&gt;${project.build.directory}/${project.build.finalName}&lt;/webappDirectory&gt; 018 &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt; 019 020 &lt;spring.version&gt;3.1.1.RELEASE&lt;/spring.version&gt; 021 &lt;final.name&gt;TestApp&lt;/final.name&gt; 022 &lt;/properties&gt; 023 024 &lt;build&gt; 025 &lt;resources&gt; 026 &lt;resource&gt; 027 &lt;filtering&gt;true&lt;/filtering&gt; 028 &lt;directory&gt;src/main/resources&lt;/directory&gt; 029 &lt;/resource&gt; 030 &lt;/resources&gt; 031 &lt;finalName&gt;${final.name}&lt;/finalName&gt; 032 033 &lt;!-- Generate compiled stuff in the folder used for developing mode --&gt; 034 &lt;outputDirectory&gt;${webappDirectory}/WEB-INF/classes&lt;/outputDirectory&gt; 035 036 &lt;plugins&gt; 037 038 &lt;!-- GWT Maven Plugin --&gt; 039 &lt;plugin&gt; 040 &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt; 041 &lt;artifactId&gt;gwt-maven-plugin&lt;/artifactId&gt; 042 &lt;version&gt;2.4.0&lt;/version&gt; 043 &lt;executions&gt; 044 &lt;execution&gt; 045 &lt;goals&gt; 046 &lt;goal&gt;compile&lt;/goal&gt; 047 &lt;goal&gt;i18n&lt;/goal&gt; 048 &lt;goal&gt;generateAsync&lt;/goal&gt; 049 &lt;/goals&gt; 050 &lt;/execution&gt; 051 &lt;/executions&gt; 052 &lt;!-- Plugin configuration. There are many available options, see gwt-maven-plugin 053 documentation at codehaus.org --&gt; 054 &lt;configuration&gt; 055 &lt;runTarget&gt;Main.html&lt;/runTarget&gt; 056 &lt;hostedWebapp&gt;${webappDirectory}&lt;/hostedWebapp&gt; 057 &lt;i18nMessagesBundle&gt;net.cds.cps.cpcadmin.client.Messages&lt;/i18nMessagesBundle&gt; 058 &lt;/configuration&gt; 059 &lt;/plugin&gt; 060 061 &lt;!-- Copy static web files before executing gwt:run --&gt; 062 &lt;plugin&gt; 063 &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; 064 &lt;artifactId&gt;maven-war-plugin&lt;/artifactId&gt; 065 &lt;version&gt;2.1.1&lt;/version&gt; 066 &lt;executions&gt; 067 &lt;execution&gt; 068 &lt;phase&gt;compile&lt;/phase&gt; 069 &lt;goals&gt; 070 &lt;goal&gt;exploded&lt;/goal&gt; 071 &lt;/goals&gt; 072 &lt;/execution&gt; 073 &lt;/executions&gt; 074 &lt;configuration&gt; 075 &lt;webappDirectory&gt; 076 ${webappDirectory} 077 &lt;/webappDirectory&gt; 078 &lt;/configuration&gt; 079 &lt;/plugin&gt; 080 081 &lt;plugin&gt; 082 &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; 083 &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt; 084 &lt;version&gt;2.3.2&lt;/version&gt; 085 &lt;configuration&gt; 086 &lt;source&gt;1.6&lt;/source&gt; 087 &lt;target&gt;1.6&lt;/target&gt; 088 &lt;/configuration&gt; 089 &lt;/plugin&gt; 090 &lt;/plugins&gt; 091 092 &lt;pluginManagement&gt; 093 &lt;plugins&gt; 094 &lt;plugin&gt; 095 &lt;groupId&gt;org.eclipse.m2e&lt;/groupId&gt; 096 &lt;artifactId&gt;lifecycle-mapping&lt;/artifactId&gt; 097 &lt;version&gt;1.0.0&lt;/version&gt; 098 &lt;configuration&gt; 099 &lt;lifecycleMappingMetadata&gt; 100 &lt;pluginExecutions&gt; 101 &lt;pluginExecution&gt; 102 &lt;pluginExecutionFilter&gt; 103 &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt; 104 &lt;artifactId&gt;gwt-maven-plugin&lt;/artifactId&gt; 105 &lt;versionRange&gt;2.4.0&lt;/versionRange&gt; 106 &lt;goals&gt; 107 &lt;goal&gt;resources&lt;/goal&gt; 108 &lt;goal&gt;compile&lt;/goal&gt; 109 &lt;goal&gt;test&lt;/goal&gt; 110 &lt;goal&gt;i18n&lt;/goal&gt; 111 &lt;goal&gt;generateAsync&lt;/goal&gt; 112 &lt;/goals&gt; 113 &lt;/pluginExecutionFilter&gt; 114 &lt;action&gt; 115 &lt;execute /&gt; 116 &lt;/action&gt; 117 &lt;/pluginExecution&gt; 118 &lt;pluginExecution&gt; 119 &lt;pluginExecutionFilter&gt; 120 &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; 121 &lt;artifactId&gt;maven-war-plugin&lt;/artifactId&gt; 122 &lt;versionRange&gt;[2.1.1,)&lt;/versionRange&gt; 123 &lt;goals&gt; 124 &lt;goal&gt;exploded&lt;/goal&gt; 125 &lt;/goals&gt; 126 &lt;/pluginExecutionFilter&gt; 127 &lt;action&gt; 128 &lt;execute /&gt; 129 &lt;/action&gt; 130 &lt;/pluginExecution&gt; 131 &lt;/pluginExecutions&gt; 132 &lt;/lifecycleMappingMetadata&gt; 133 &lt;/configuration&gt; 134 &lt;/plugin&gt; 135 &lt;/plugins&gt; 136 &lt;/pluginManagement&gt; 137 138 &lt;/build&gt; 139 140 &lt;dependencies&gt; 141 142 &lt;!-- Google Web Toolkit Stuff --&gt; 143 &lt;dependency&gt; 144 &lt;groupId&gt;com.google.gwt&lt;/groupId&gt; 145 &lt;artifactId&gt;gwt-servlet&lt;/artifactId&gt; 146 &lt;version&gt;${gwtVersion}&lt;/version&gt; 147 &lt;scope&gt;runtime&lt;/scope&gt; 148 &lt;/dependency&gt; 149 &lt;dependency&gt; 150 &lt;groupId&gt;com.google.gwt&lt;/groupId&gt; 151 &lt;artifactId&gt;gwt-user&lt;/artifactId&gt; 152 &lt;version&gt;${gwtVersion}&lt;/version&gt; 153 &lt;scope&gt;provided&lt;/scope&gt; 154 &lt;/dependency&gt; 155 &lt;dependency&gt; 156 &lt;groupId&gt;junit&lt;/groupId&gt; 157 &lt;artifactId&gt;junit&lt;/artifactId&gt; 158 &lt;version&gt;4.7&lt;/version&gt; 159 &lt;scope&gt;test&lt;/scope&gt; 160 &lt;/dependency&gt; 161 &lt;dependency&gt; 162 &lt;groupId&gt;javax.validation&lt;/groupId&gt; 163 &lt;artifactId&gt;validation-api&lt;/artifactId&gt; 164 &lt;version&gt;1.0.0.GA&lt;/version&gt; 165 &lt;scope&gt;test&lt;/scope&gt; 166 &lt;/dependency&gt; 167 &lt;dependency&gt; 168 &lt;groupId&gt;javax.validation&lt;/groupId&gt; 169 &lt;artifactId&gt;validation-api&lt;/artifactId&gt; 170 &lt;version&gt;1.0.0.GA&lt;/version&gt; 171 &lt;classifier&gt;sources&lt;/classifier&gt; 172 &lt;scope&gt;test&lt;/scope&gt; 173 &lt;/dependency&gt; 174 175 &lt;!-- Spring --&gt; 176 &lt;dependency&gt; 177 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 178 &lt;artifactId&gt;org.springframework.context&lt;/artifactId&gt; 179 &lt;version&gt;${spring.version}&lt;/version&gt; 180 &lt;/dependency&gt; 181 &lt;dependency&gt; 182 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 183 &lt;artifactId&gt;org.springframework.core&lt;/artifactId&gt; 184 &lt;version&gt;${spring.version}&lt;/version&gt; 185 &lt;/dependency&gt; 186 &lt;dependency&gt; 187 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 188 &lt;artifactId&gt;org.springframework.web&lt;/artifactId&gt; 189 &lt;version&gt;${spring.version}&lt;/version&gt; 190 &lt;/dependency&gt; 191 &lt;dependency&gt; 192 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 193 &lt;artifactId&gt;org.springframework.web.servlet&lt;/artifactId&gt; 194 &lt;version&gt;${spring.version}&lt;/version&gt; 195 &lt;/dependency&gt; 196 &lt;dependency&gt; 197 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 198 &lt;artifactId&gt;org.springframework.beans&lt;/artifactId&gt; 199 &lt;version&gt;${spring.version}&lt;/version&gt; 200 &lt;/dependency&gt; 201 &lt;dependency&gt; 202 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 203 &lt;artifactId&gt;org.springframework.oxm&lt;/artifactId&gt; 204 &lt;version&gt;${spring.version}&lt;/version&gt; 205 &lt;/dependency&gt; 206 &lt;dependency&gt; 207 &lt;groupId&gt;org.springframework&lt;/groupId&gt; 208 &lt;artifactId&gt;spring-jdbc&lt;/artifactId&gt; 209 &lt;version&gt;${spring.version}&lt;/version&gt; 210 &lt;/dependency&gt; 211 212 &lt;!--db --&gt; 213 &lt;dependency&gt; 214 &lt;groupId&gt;net.sourceforge.jtds&lt;/groupId&gt; 215 &lt;artifactId&gt;jtds&lt;/artifactId&gt; 216 &lt;version&gt;1.2.4&lt;/version&gt; 217 &lt;/dependency&gt; 218 &lt;dependency&gt; 219 &lt;groupId&gt;org.mybatis&lt;/groupId&gt; 220 &lt;artifactId&gt;mybatis-spring&lt;/artifactId&gt; 221 &lt;version&gt;1.0.2&lt;/version&gt; 222 &lt;/dependency&gt; 223 &lt;dependency&gt; 224 &lt;groupId&gt;org.springframework.data&lt;/groupId&gt; 225 &lt;artifactId&gt;spring-data-commons-core&lt;/artifactId&gt; 226 &lt;version&gt;1.1.0.RELEASE&lt;/version&gt; 227 &lt;/dependency&gt; 228 &lt;dependency&gt; 229 &lt;groupId&gt;commons-dbcp&lt;/groupId&gt; 230 &lt;artifactId&gt;commons-dbcp&lt;/artifactId&gt; 231 &lt;version&gt;1.2.2&lt;/version&gt; 232 &lt;/dependency&gt; 233 234 235 &lt;!-- logging --&gt; 236 237 &lt;dependency&gt; 238 &lt;groupId&gt;ant&lt;/groupId&gt; 239 &lt;artifactId&gt;ant-apache-log4j&lt;/artifactId&gt; 240 &lt;version&gt;1.6.5&lt;/version&gt; 241 &lt;/dependency&gt; 242 243 &lt;dependency&gt; 244 &lt;groupId&gt;log4j&lt;/groupId&gt; 245 &lt;artifactId&gt;log4j&lt;/artifactId&gt; 246 &lt;version&gt;1.2.16&lt;/version&gt; 247 &lt;/dependency&gt; 248 249 &lt;dependency&gt; 250 &lt;groupId&gt;net.cds.cps.dao.logger&lt;/groupId&gt; 251 &lt;artifactId&gt;LoggingDAO&lt;/artifactId&gt; 252 &lt;version&gt;1.0.0&lt;/version&gt; 253 &lt;/dependency&gt; 254 &lt;/dependencies&gt; 255 256 &lt;repositories&gt; 257 &lt;repository&gt; 258 &lt;id&gt;asc.internal&lt;/id&gt; 259 &lt;name&gt;Internal Repository&lt;/name&gt; 260 &lt;url&gt;http://repository/maven2/internal&lt;/url&gt; 261 &lt;/repository&gt; 262 &lt;repository&gt; 263 &lt;id&gt;springsource-release&lt;/id&gt; 264 &lt;name&gt;SpringSource Releases Repository&lt;/name&gt; 265 &lt;url&gt;http://repository.springsource.com/maven/bundles/release&lt;/url&gt; 266 &lt;/repository&gt; 267 &lt;repository&gt; 268 &lt;id&gt;springsource-external&lt;/id&gt; 269 &lt;name&gt;SpringSource External Releases Repository&lt;/name&gt; 270 &lt;url&gt;http://repository.springsource.com/maven/bundles/external&lt;/url&gt; 271 &lt;/repository&gt; 272 &lt;/repositories&gt; 273 274 &lt;pluginRepositories&gt; 275 &lt;pluginRepository&gt; 276 &lt;id&gt;gwt-maven-plugins&lt;/id&gt; 277 &lt;url&gt;http://gwt-maven.googlecode.com/svn/trunk/mavenrepo/&lt;/url&gt; 278 &lt;/pluginRepository&gt; 279 &lt;/pluginRepositories&gt; 280 281 &lt;distributionManagement&gt; 282 &lt;repository&gt; 283 &lt;id&gt;internal&lt;/id&gt; 284 &lt;name&gt;Internal Shared Maven Repository&lt;/name&gt; 285 &lt;url&gt;scp://maven/var/www/html/maven2/internal&lt;/url&gt; 286 &lt;/repository&gt; 287 &lt;/distributionManagement&gt; 288 289 &lt;/project&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload