Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

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"