buildr-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jabbar <aja...@gmail.com>
Subject A few problems with my build, ear package and testng tests
Date Mon, 04 Feb 2008 23:35:49 GMT
Hello again,

I have a build file that builds a multiple artifact project using the
ear task and some test ng code. After running buildr(latest from
trunk(4/2/2008) package I get the following application.xml file in my
ear project
-------------------------------------------------------------------------------------------------------------------------
<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE
Application 1.2//EN"
"http://java.sun.com/j2ee/dtds/application_1_2.dtd">
<application>
  <display-name>projectpermissions</display-name>
  <module id="projectpermissions-ejbproj">
    <ejb>:/ejb/projectpermissions-ejbproj-1.0.jar</ejb>
  </module>
  <module id="projectpermissions-war">
    <web>
      <web-uri>:/war/projectpermissions-war-1.0.war</web-uri>
      <context-root>/projectpermissions-war</context-root>
    </web>
  </module>
</application>
--------------------------------------------------------------------------------------------------------------------------
Note the <ejb>:/ejb/projectpermissions-ejbproj-1.0.jar</ejb> and
<web-uri>:/war/projectpermissions-war-1.0.war</web-uri>. I don't
understand the presence of :/ejb and :/war

In addition I have one test class and the following error is generated
everytime I do a build


D:\work\projectpermissions>buildr package
(in D:/work/projectpermissions, development)
Building projectpermissions
Testing projectpermissions
Testing projectpermissions:ejb-client
Testing projectpermissions:ejbproj
Running tests in projectpermissions:ejbproj
Running com.ajazam.SimpleTest
[Parser] Running:
  projectpermissions:ejbproj

[[Utils]] The filename, directory name, or volume label syntax is incorrect
java.io.FileNotFoundException:
D:\work\projectpermissions\ejbproj\reports\testng\projectpermissions:ejbproj\Command
line
 test.xml (The filename, directory name, or volume label syntax is incorrect)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
        at java.io.FileWriter.<init>(FileWriter.java:73)
        at org.testng.reporters.JUnitXMLReporter.generateReport(JUnitXMLReporter.java:149)
        at org.testng.reporters.JUnitXMLReporter.onFinish(JUnitXMLReporter.java:111)
        at org.testng.TestRunner.fireEvent(TestRunner.java:871)
        at org.testng.TestRunner.afterRun(TestRunner.java:699)
        at org.testng.TestRunner.run(TestRunner.java:484)
        at org.testng.SuiteRunner.runTest(SuiteRunner.java:278)
        at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:273)
        at org.testng.SuiteRunner.privateRun(SuiteRunner.java:253)
        at org.testng.SuiteRunner.run(SuiteRunner.java:168)
        at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:987)
        at org.testng.TestNG.runSuitesLocally(TestNG.java:951)
        at org.testng.TestNG.run(TestNG.java:719)
        at org.testng.TestNG.privateMain(TestNG.java:1019)
        at org.testng.TestNG.main(TestNG.java:997)
failed to create JUnitXML because of java.io.FileNotFoundException:
D:\work\projectpermissions\ejbproj\reports\testng\pr
ojectpermissions:ejbproj\Command line test.xml (The filename,
directory name, or volume label syntax is incorrect)

===============================================
projectpermissions:ejbproj
Total tests run: 1, Failures: 0, Skips: 0
===============================================

Couldn't find resource on the class path: testng.css
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
[[Utils]] The filename, directory name, or volume label syntax is incorrect
Testing projectpermissions:war
Packaging projectpermissions
Running integration tests...
Completed in 1.156s


My project build file is

require "buildr"

VERSION_NUMBER = "1.0"

#--------------------------------
#tapestry project compile dependencies
#compile
TAPESTRY5 = ["org.apache.tapestry:tapestry-core:jar:5.0.9"]
COMMONS_CODEC = ["commons-codec:commons-codec:jar:1.3"]
TAPESTRY_ANNOTATIONS = ["org.apache.tapestry:tapestry-annotations:jar:5.0.9"]

#provided
TAPESTRY_IOC = ["org.apache.tapestry:tapestry-ioc:jar:5.0.9"]
SERVLET_API  = ["javax.servlet:servlet-api:jar:2.4"]
EASYMOCK     = ["org.easymock:easymock:jar:2.3"]
#---------------------------------

#--------------------------------
#tapestry project transitive dependencies
#compile
JAVAASSIST = ["jboss:javassist:jar:3.6.ga"]
LOG4J = ["log4j:log4j:jar:1.2.14"]
SLF4J_API = ["org.slf4j:slf4j-api:jar:1.4.3"]
SLF4J_LOG4J12 = ["org.slf4j:slf4j-log4j12:jar:1.4.3"]

#provided
JUNIT = ["junit:junit:jar:3.8.1"]
SELENIUM=["org.openqa.selenium.client-drivers:selenium-java-client-driver:jar:0.8.1"]
SELENIUM_SERVER=["org.openqa.selenium.server:selenium-server:jar:0.8.1"]
TESTNG=["org.testng:testng:jar:jdk15:5.7"]
#--------------------------------

JEE5 = ["javaee:javaee-api:jar:5"]

TAPESTRY_COMPILE = [TAPESTRY5, COMMONS_CODEC, TAPESTRY_ANNOTATIONS,
JAVAASSIST, SLF4J_API, SLF4J_LOG4J12]
TAPESTRY_PROVIDED = [SERVLET_API, EASYMOCK, JUNIT, SELENIUM,
SELENIUM_SERVER, TESTNG, LOG4J]

TAPESTRY_INCLUDE = TAPESTRY_COMPILE, TAPESTRY_IOC

repositories.remote << "http://repo1.maven.org/maven2"
repositories.remote << "http://tapestry.formos.com/maven-snapshot-repository"
repositories.remote << "http://mirrors.ibiblio.org/pub/mirrors/maven2"
repositories.remote << "http://ibiblio.lsu.edu/main/pub/packages/maven2"
repositories.remote << "http://maven.openqa.org"
repositories.remote << "http://repository.jboss.com/maven2"
repositories.remote << "http://download.java.net/maven/1"

PERSISTENCE = ["jboss:jboss-persistence-api:jar:3.0.0-SNAPSHOT"]
EJB = ["jboss:jboss-ejb-api:jar:4.2.0.GA"]

define 'projectpermissions' do

  project.version = VERSION_NUMBER
  project.group = "acme"
  manifest["Copyright"] = "Jabbar Azam (C) 2008"
  compile.options.target = "1.5"
  test.using :testng

  define 'war' do
    compile.with TAPESTRY_COMPILE, TAPESTRY_PROVIDED,
TAPESTRY_INCLUDE, project('ejb-client')
    package(:war).with :libs=>TAPESTRY_INCLUDE
  end

  define 'ejb-client' do
    compile.with JEE5
    package(:jar)
  end

  define 'ejbproj' do
    compile.with project('ejb-client'), JEE5
    package(:jar)
  end

  package(:ear).add :ejb=>project('ejbproj').package(:jar),:path=>'/',
:display_name=>'ejbproj'
  package(:ear).add project('war').package('war'), :context_root =>
'/',:path=>'/', :display_name=>'war'
  package(:ear).add project('ejb-client').package(:jar)
  #package(:ear).map[:ejb]=nil
  #package(:ear).map[:war]=nil


end


Anybody got any ideas? I'm not very good with ruby, otherwise I would
have a go at debugging the ruby. Right now crappy old ant( or Gant )
with ivy looks tempting :(


-- 
Thanks

 A Jabbar Azam

Mime
View raw message