{"componentChunkName":"component---node-modules-gatsby-theme-medium-to-own-blog-src-templates-blog-post-js","path":"/maven-facts/","result":{"data":{"site":{"siteMetadata":{"siteUrl":"https://javame.netlify.app","githubUrl":"https://github.com/aterreno/blog"}},"mdx":{"fields":{"slug":"/maven-facts/"},"excerpt":"Maven  will never tell you which phases or goals are available in the pom, you have to guess or check the  on-line documentation Maven by…","timeToRead":1,"frontmatter":{"title":"Maven Facts","description":"","categories":[],"date":"April 16, 2009","canonical_link":"https://javame.netlify.app//maven-facts-3e2e37f7110c"},"body":"function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"Maven Facts\",\n  \"description\": \"\",\n  \"date\": \"2009-04-16T00:00:00.000Z\",\n  \"categories\": [],\n  \"published\": true,\n  \"canonical_link\": \"https://javame.netlify.app//maven-facts-3e2e37f7110c\",\n  \"redirect_from\": [\"/maven-facts-3e2e37f7110c\"]\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, [\"components\"]);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://maven.apache.org/\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"Maven\"), \" will never tell you which phases or goals are available in the pom, you have to guess or check the \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"on-line documentation\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven by default uses text files to dump the test execution results, if you want to see what\\u2019s happening on the console you have to call it with -Dsurefire.useFile=false\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven can skip the executions of the tests (sometimes might be useful!) call it with \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://maven.apache.org/plugins/maven-surefire-plugin/examples/skipping-test.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"-\", \"Dmaven.test.skip=true\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven knows what inheritance is (and therefore claims that it\\u2019s object oriented\\u2026 grrr\\u2026) so if you can\\u2019t find where some property is defined \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://mavenize.blogspot.com/2007/06/pom-inheritance.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"have a look up on the parent\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven is based on XML but you won\\u2019t write as much XML as with Ant\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven can create Eclipse project files and even download the sources for you (\", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://maven.apache.org/guides/mini/guide-ide-eclipse.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"mvn eclipse:eclipse -DdownloadSources=true\"), \")\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven downloads stuff from the internet (#1 failure reason for 99% Maven presentations) but can be run in offline mode (if you had a sucessfull install previously), try mvn -o\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven uses repositories, but since not all the libs in the world are in repositories you should setup a local repository (\", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://archiva.apache.org/\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"Archiva\"), \" works well)\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven uses repositories, but since you don\\u2019t want to hog all your company bandwith you should setup a local repository\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven goes great with stuff like \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"https://hudson.dev.java.net/\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"Hudson\"), \", \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://sonar.codehaus.org/\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"Sonar\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://maven.apache.org/guides/introduction/introduction-to-profiles.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"build profiles\"), \" are really cool\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Maven is not \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://en.wikipedia.org/wiki/Silver_bullet\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"silver bullet\"), \" but I\\u2019ll never go back to \", mdx(\"a\", _extends({\n    parentName: \"li\"\n  }, {\n    \"href\": \"http://ant.apache.org/\",\n    \"target\": \"_blank\",\n    \"rel\": \"nofollow noopener noreferrer\"\n  }), \"Ant\"))));\n}\n;\nMDXContent.isMDXComponent = true;"},"allWebMentionEntry":{"nodes":[]}},"pageContext":{"id":"252f984d-fd67-5253-8b65-edcc4ffd0d24","previous":{"id":"fd8f3b0d-8c7e-557e-987f-10ebe90d305c","fields":{"slug":"/embrace-quality-use-sonar/","published":true},"frontmatter":{"redirect_from":["/embrace-quality-use-sonar-2bd0a12daa81"],"redirect_to":null,"title":"Embrace Quality, use Sonar"}},"next":{"id":"7db4e071-5c82-5b80-b032-1f9797926c49","fields":{"slug":"/spring-facts/","published":true},"frontmatter":{"redirect_from":["/spring-facts-c0b9cd28ad5e"],"redirect_to":null,"title":"Spring Facts"}},"permalink":"https://javame.netlify.app/maven-facts/","themeOptions":{"plugins":[],"config":{"title":"Antonio Terreno","description":"Antonio Terreno's blog archive","shortBio":"","bio":"Principal Consultant at Equal Experts","author":"Antonio Terreno","githubUrl":"https://github.com/aterreno/blog","siteUrl":"https://javame.netlify.app/","social":{"twitter":"javame","medium":"","facebook":"","github":"aterreno","linkedin":"antonioterreno","instagram":"tritonitri"},"goatCounterCode":null}}}},"staticQueryHashes":["4131332129","645483741"]}