Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

directTester.sh 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!/bin/sh
  2. # syntax: <mainFile> {file}...
  3. # info: compile files and run mainFile class (with Tester classes)
  4. # requires JDKDIR and build output be available
  5. [ -n "$DEBUG" ] && set -vx
  6. pathtojava() {
  7. echo "$1" | sed 's|/cygdrive/\(c\)/|\1:/|' # todo
  8. }
  9. errMssg() {
  10. echo "## $0 Error: $1"
  11. if [ -n "$2" ] ; then exit "$2" ; fi
  12. }
  13. sourcesRunningInNew() {
  14. cat<<EOF
  15. InnerInterfaceNames.java
  16. InnerInterfaceAccess.java
  17. PR691.java
  18. AroundDoubleAssignment.java
  19. AroundDoubleAssignmentC.java
  20. AroundChangeThis.java
  21. PointcutQualification.java
  22. PointcutQualification2.java
  23. AbstractPointcutAccess.java
  24. SourceLocationCall.java
  25. CallNotTarget.java
  26. AroundCall.java
  27. ArgsInCflow2.java
  28. FactorialCflow.java
  29. ArrayInc.java
  30. TargetObjectReplacement.java
  31. EOF
  32. }
  33. runAjc() {
  34. "$JDKDIR/bin/java" -classpath "$compilerJar" org.aspectj.tools.ajc.Main \
  35. -d "$classesDir" -classpath "$rtJar${PS}$clientJar" "${@}"
  36. }
  37. runJava() {
  38. "$JDKDIR/bin/java" -classpath "$rtJar${PS}$clientJar${PS}$classesDir" "${@}"
  39. }
  40. if [ -n "$PS" ] ; then
  41. case `uname` in
  42. CYGWIN* ) PS=";" ;;
  43. * ) PS=":" ;;
  44. esac
  45. fi
  46. scriptDir=`dirname "$0"`
  47. scriptDir=`cd "$scriptDir"; pwd`
  48. java="$JDKDIR/bin/java"
  49. [ -x "$java" ] || errMssg "no java=$java"
  50. ajJarsDir=`cd "$scriptDir/../../../aj-build-modules/jars"; pwd`
  51. ajJarsDirJ=`pathtojava "$ajJarsDir"`
  52. clientJar="$ajJarsDirJ/testing-client.jar"
  53. compilerJar="${compilerJar:-ajJarsDirJ/alltesting.jar}"
  54. rtJar="$ajJarsDirJ/runtime.jar"
  55. classesDir=cl
  56. [ -f "$clientJar" ] || errMssg "no clientJar=$clientJar" 4
  57. [ -f "$rtJar" ] || errMssg "no rtJar=$rtJar" 4
  58. cd "$scriptDir/../new" || errMssg "no new directory" 4
  59. mkdir "$classesDir"
  60. sources="${@:-`sourcesRunningInNew`}"
  61. for srcFile in $sources ; do
  62. [ -f "$srcFile" ] || errMssg "no srcFile=$srcFile" 4
  63. className=`echo "$srcFile" | sed 's|\/|.|g;s|\.java||'`
  64. [ -n "$className" ] || errMssg "no className" 4
  65. rm -rf "$classesDir"/*
  66. runAjc "${srcFile}"
  67. runJava $className || echo '<<<< FAIL '"$srcFile"
  68. done
  69. rm -rf "$classesDir"