[jbosstools-dev] Help wanted: Can't build tests component
Denis Golovin
dgolovin at exadel.com
Fri Apr 27 17:56:43 EDT 2012
found and fixed the reason why it happens. Problem is in how maven
activate profiles. It turned out activate by default works only if there
is no file exists activation condition.
For components where requirements build is required for tests build
without -Pdefault failed, because default profile didn't get activated.
fixed profile activation by moving requirements build to build/plugins
section and it just check for requirements.properties to build in every
module in reactor. Well, it is not very efficient but:
- it adds a little for every module build, because it exits right away
if there is no requirements.properties file in module
- it is good when build works by default without needed to remember
adding -Pdefault into maven command
so now whole JBT trunk can be build without test execution as
mvn clean install -DskipTests
or if you brave enough and want it with tests
mvn clean install -fae
then you can work with your component and build it like I tested it for as
to just build it without tests
cd as
mvn clean install -DskipTests
to build and test
cd as
mvn clean install -fae
Denis
On 04/27/2012 09:39 AM, Victor Rubezhny wrote:
> Thanks, Nick!
>
> On 04/27/2012 07:53 PM, Nick Boldt wrote:
>> Relevant part of the log (which you can get w/o the -e or -X flags,
>> generally) is this:
>>
>> [INFO] Resolving dependencies of MavenProject:
>> org.jboss.tools.as.tests:org.jboss.ide.eclipse.as.test:2.3.0-SNAPSHOT
>> @
>> /home/jeremy/projects/jbosstools-src/as/tests/org.jboss.ide.eclipse.as.test/pom.xml
>> [INFO]
>> {org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1,
>> osgi.ws=cocoa, osgi.os=macosx, osgi.arch=x86,
>> org.eclipse.update.install.features=true,
>> org.osgi.framework.system.packages=}
>> [ERROR] Software being installed: org.jboss.ide.eclipse.as.test
>> 2.3.0.qualifier
>> [ERROR] Missing requirement: org.jboss.ide.eclipse.as.core
>> 2.3.0.qualifier requires 'bundle org.eclipse.core.runtime 3.7.0' but
>> it could not be found
>> [ERROR] Cannot satisfy dependency: org.jboss.ide.eclipse.as.test
>> 2.3.0.qualifier depends on: bundle org.jboss.ide.eclipse.as.core 0.0.0
>>
>> So, there's something seriously wrong here. The 'tests' component
>> should not depend on 'as'; it's the other way around.
>>
>> What's happening is that you're running a profile that doesn't exist.
>> There is no "tests-bootstrap" because tests has no upstream. Try this:
>>
>> mvn clean install -fae -e -Pdefault,tests -f build/pom.xml
>> -Dmaven.repo.local=.repository -Dmaven.test.skip | tee tests.build.log2
>>
>> or simpler:
>>
>> cd tests; mvn clean install -fae -Pdefault
>> -Dmaven.repo.local=../.repository -Dmaven.test.skip | tee
>> tests.build.log2
>>
>> Cheers,
>>
>> Nick
>>
>> On 04/27/2012 06:31 AM, Victor Rubezhny wrote:
>>> Thanks, Nick!
>>>
>>> I'm already using '-Dmaven.test.skip' option, but specifying MAVEN_OPTS
>>> helped the builder to go further.
>>>
>>> However, when I cleaned my local repository and tried to build using
>>> MAVEN_OPTS I faced another build error: now it can't satisfy almost all
>>> the dependencies to eclipse plug-ins. Cannot find what's the problem...
>>> may be you'll be more lucky than me (See the log attached)
>>>
>>> The commands I've used to build tests-bootstrap is:
>>>
>>> cd<jbosstools-src folder>/
>>> rm -fr .repository
>>> mvn clean install -fae -e -Pdefault,tests-bootstrap -f build/pom.xml
>>> -Dmaven.repo.local=.repository -Dmaven.test.skip | tee tests.build.log
>>>
>>> (So, my local repo was cleared before build and as such all the
>>> dependencies were to be downloaded again)
>>>
>>> Yet another question is: Do we really need 'tests' component to depend
>>> on all the other JBoss Tools components (as it does, at least is seems
>>> for me because I see too many org.jboss.* plug-ins mentioned in the
>>> build-log)?
>>>
>>> Thanks in advance,
>>> Victor
>>>
>>> On 04/27/2012 08:34 AM, Nick Boldt wrote:
>>>> Try building w/o running the tests:
>>>>
>>>> `mvn install -Dmaven.test.skip`
>>>>
>>>> Or, allocate more memory to maven processes by adding something like
>>>> this to your /opt/apache-maven-3.0.4/bin/mvn (or wherever you have mvn
>>>> installed) script:
>>>>
>>>> set MAVEN_OPTS=-Xms512m -Xmx1024m -XX:PermSize=128m
>>>> -XX:MaxPermSize=256m
>>>>
>>>> then run as above.
>>>>
>>>> If that helps, consider adding a section on memory/performance tuning
>>>> this to the wiki:
>>>>
>>>> https://community.jboss.org/wiki/HowtoBuildJBossToolswithMaven3
>>>>
>>>> Thanks!
>>>>
>>>> On 04/26/2012 08:33 PM, Victor Rubezhny wrote:
>>>>> Hi, ALL!
>>>>>
>>>>> Probably this question is actually for Nick or Denis but...
>>>>>
>>>>> Trying to build tests component by tycho build but constantly getting
>>>>> the following error as result (See the output below).
>>>>>
>>>>> The question is: do I need to buy a newer PC (or at least install more
>>>>> memory)? :o)
>>>>>
>>>>> Any hints appreciated.
>>>>> Best Regards,
>>>>> Victor
>>>>>
>>>>> === Cut ===
>>>>> [ERROR] GC overhead limit exceeded -> [Help 1]
>>>>> java.lang.OutOfMemoryError: GC overhead limit exceeded
>>>>> at java.util.Arrays.copyOfRange(Arrays.java:3209)
>>>>> at java.lang.String.<init>(String.java:215)
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.xni.XMLString.toString(XMLString.java:185)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.util.XMLAttributesImpl.getValue(XMLAttributesImpl.java:537)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser$AttributesProxy.getValue(AbstractSAXParser.java:2319)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$AbstractHandler.parseAttributes(XMLParser.java:314)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$AbstractHandler.parseRequiredAttributes(XMLParser.java:295)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$PropertyHandler.parseProperty(XMLParser.java:422)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$PropertyHandler.<init>(XMLParser.java:411)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$PropertiesHandler.startElement(XMLParser.java:396)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.persistence.XMLParser$AbstractHandler.startElement(XMLParser.java:165)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:179)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:377)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
>>>>>
>>>>>
>>>>> at
>>>>> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryIO$Parser.parse(MetadataRepositoryIO.java:209)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryIO.read(MetadataRepositoryIO.java:63)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:107)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:749)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.tycho.p2.target.TargetPlatformBuilderImpl.addP2Repository(TargetPlatformBuilderImpl.java:259)
>>>>>
>>>>>
>>>>> [ERROR]
>>>>> [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/OutOfMemoryError
>>>>> j
>>>>> _______________________________________________
>>>>> jbosstools-dev mailing list
>>>>> jbosstools-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
> _______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
More information about the jbosstools-dev
mailing list