Я пытаюсь написать скрипт, который будет создавать проект с помощью Ant Project Builder.
Тест запускается без проблем. Класс пользователя тоже хорошо. Но когда я запускаю build.xml , я получаю эти ошибки.
Я добавлю сюда User-class и UserTest для этого класса.
Может кто-нибудь объяснить, что не так с этим кодом?
Buildfile: /home/alexandr/eclipse-workspace/usermanagement/build.xml
clean:
[delete] Deleting directory /home/alexandr/eclipse-workspace/usermanagement/bin
init:
[mkdir] Created dir: /home/alexandr/eclipse-workspace/usermanagement/bin
compile:
[javac] /home/alexandr/eclipse-workspace/usermanagement/build.xml:19: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 1 source file to /home/alexandr/eclipse-workspace/usermanagement/bin
test-compile:
[javac] /home/alexandr/eclipse-workspace/usermanagement/build.xml:37: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 1 source file to /home/alexandr/eclipse-workspace/usermanagement/bin
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:7: error: package org.junit.jupiter.api does not exist
[javac] import org.junit.jupiter.api.BeforeEach;
[javac] ^
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:8: error: package org.junit.jupiter.api does not exist
[javac] import org.junit.jupiter.api.Test;
[javac] ^
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:10: error: package junit.framework does not exist
[javac] import junit.framework.TestCase;
[javac] ^
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:12: error: cannot find symbol
[javac] public class UserTest extends TestCase {
[javac] ^
[javac] symbol: class TestCase
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:15: error: cannot find symbol
[javac] @BeforeEach
[javac] ^
[javac] symbol: class BeforeEach
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:17: error: cannot find symbol
[javac] super.setUp();
[javac] ^
[javac] symbol: variable super
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:22: error: cannot find symbol
[javac] assertEquals("Соседский Александр", user.getFullName());
[javac] ^
[javac] symbol: method assertEquals(String,String)
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:26: error: cannot find symbol
[javac] assertEquals(19, user.getAge());
[javac] ^
[javac] symbol: method assertEquals(int,int)
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:33: error: cannot find symbol
[javac] assertEquals(0, user.getAge());
[javac] ^
[javac] symbol: method assertEquals(int,int)
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:41: error: cannot find symbol
[javac] assertEquals(-1, user.getAge());
[javac] ^
[javac] symbol: method assertEquals(int,int)
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:49: error: cannot find symbol
[javac] assertEquals(0, user.getAge());
[javac] ^
[javac] symbol: method assertEquals(int,int)
[javac] location: class UserTest
[javac] /home/alexandr/eclipse-workspace/usermanagement/src/test/java/ua/nure/kn/susidskyi/usermanagement/UserTest.java:57: error: cannot find symbol
[javac] assertEquals(0, user.getAge());
[javac] ^
[javac] symbol: method assertEquals(int,int)
[javac] location: class UserTest
[javac] 12 errors
BUILD FAILED
/home/alexandr/eclipse-workspace/usermanagement/build.xml:37: Compile failed; see the compiler error output for details.
Total time: 3 seconds
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="usermanagement" basedir="." default="test">
<property name="test-java-dir" value="${basedir}/src/test/java" />
<property name="main-java-dir" value="${basedir}/src/main/java" />
<property name="build-dir" value="${basedir}/bin" />
<property name="lib-dir" value="${basedir}/lib" />
<target name="clean">
<delete dir="${build-dir}" />
</target>
<target name="init" depends="clean">
<mkdir dir="${build-dir}" />
</target>
<target name="compile" depends="init">
<javac srcdir="${main-java-dir}" destdir="${build-dir}"/>
</target>
<target name="test" depends="test-compile, compile" description="description">
<junit>
<classpath>
<pathelement location="${build-dir}" />
<fileset dir="${lib-dir}">
<include name="**/junit.jar" />
</fileset>
</classpath>
<test name="ua.nure.kn.susidskyi.usermanagement.UserTest" />
<formatter type="plain" />
</junit>
</target>
<target name="test-compile" depends="compile">
<javac srcdir="${test-java-dir}" destdir="${build-dir}">
<classpath>
<path id="org.junit" location="${lib-dir}/junit.jar" />
</classpath>
</javac>
</target>
</project>
Класс пользователя
package ua.nure.kn.susidskyi.usermanagement;
import java.util.Date;
import java.io.Serializable;
import java.util.Calendar;
public class User implements Serializable{
private static final long serialVersionUID = -112812758632339479L;
private Long id;
private String firstName;
private String lastName;
private Date dateOfBirth;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public Date getDateOfBirth() {
return dateOfBirth;
}
public void setDateOfBirth(Date dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
public User(Long id, String firstName, String lastName, Date dateOfBirth) {
super();
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
this.dateOfBirth = dateOfBirth;
}
public String getFullName() {
return getLastName() + " " + getFirstName();
}
public int getAge() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
int currentYear = calendar.get(Calendar.YEAR);
int currentDay = calendar.get(Calendar.DAY_OF_MONTH);
int currentMonth = calendar.get(Calendar.MONTH);
calendar.setTime(getDateOfBirth());
int birthYear = calendar.get(Calendar.YEAR);
int birthDay = calendar.get(Calendar.DAY_OF_MONTH);
int birthMonth = calendar.get(Calendar.MONTH);
int age = currentYear - birthYear;
if ((currentMonth == birthMonth && currentDay < birthDay) || currentMonth < birthMonth ) {
return age;
}
else if(currentDay == birthDay && currentMonth == birthMonth) {
return age;
}
else if(currentYear < birthYear || (currentYear == birthYear && birthMonth > currentMonth) ||
(currentYear == birthYear && birthMonth == currentMonth && birthDay > currentDay)) {
return -age;
}
else {
return age;
}
}
}
UserTest для класса пользователя
package ua.nure.kn.susidskyi.usermanagement;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import junit.framework.TestCase;
public class UserTest extends TestCase {
private User user;
@BeforeEach
protected void setUp() throws Exception {
super.setUp();
user = new User(1L, "Александр", "Соседский", new SimpleDateFormat("d-MM-yyyy").parse("11-09-2000"));
}
public void testGetFullName() {
assertEquals("Соседский Александр", user.getFullName());
}
public void testGetAge() {
assertEquals(19, user.getAge());
}
public void testGetAgeBirthdayToday() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
user.setDateOfBirth(calendar.getTime());
assertEquals(0, user.getAge());
}
public void testGetAgeBirthdayLater() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.YEAR, 1);
user.setDateOfBirth(calendar.getTime());
assertEquals(-1, user.getAge());
}
public void testGetAgeThisMonthEarlier() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.DATE, -2);
user.setDateOfBirth(calendar.getTime());
assertEquals(0, user.getAge());
}
public void testGetAgeDayThisMonthLater() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.DATE, 2);
user.setDateOfBirth(calendar.getTime());
assertEquals(0, user.getAge());
}
}