2012-07-11 9 views
0

현재 프로젝트의 경로를 얻는 방법 : maven archetype으로 만든 동적 웹 애플리케이션입니다.JSP 페이지에서 이클립스 프로젝트의 경로를 얻는 방법

스크립틀릿 코드에서 JSP 페이지의 경로를 가져 오려면 다른 코드를 사용했지만 항상 이클립스 경로 (C : \ Users \ Amira \ Desktop \ eclipse \ eclipse)를 얻고 있습니다 또는 경로 (C : \ software \ apache-tomcat-7.0.28 \ apache-tomcat-7.0.28 \ wtpwebapps \ TestProjectUI)에서 웹 응용 프로그램의 웹 페이지를 열 수 있습니다. : \ 사용자 \ 어떤 생각이 을 이해할 수있을 것이다

아미라 \ junoWorkspace \ TestProjectUI 감사합니다 여기

내 JSP입니다 :

<body> 

<% 
if (request.getParameter("btnSubmit") != null) //btnSubmit is the name of your button,not id of that button. 
{ 

    String className = request.getParameter("testclass"); 
    System.out.println(className); 
    String[] command = {"CMD", "/C", "mvn -Dtest=" + className + " test"}; 
    ProcessBuilder probuilder = new ProcessBuilder(command); 

    //You can set up your work directory 
    probuilder.directory(new File("C:\\Users\\Amira\\junoWorkspace\\TestProjectUI")); 

    Process process = probuilder.start(); 

    //Read out dir output 
    java.io.InputStream is = process.getInputStream(); 
    InputStreamReader isr = new InputStreamReader(is); 
    BufferedReader br = new BufferedReader(isr); 
    String line; 
    System.out.printf("Output of running %s is:\n", Arrays.toString(command)); 
    while ((line = br.readLine()) != null) { 
     System.out.println(line); 
    } 

    //Wait to get exit value 
    try { 
     int exitValue = process.waitFor(); 
     System.out.println("\n\nExit Value is " + exitValue); 
    } catch (InterruptedException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 
%> 

     <html:file properties="tonFichier" name="tonForm"/> 


     <p> Please specify a Test :<br> 
      <input type="file" name="testclass" size="40" > 
     </p> 
     <div> 
      <input type="submit" id="btnSubmit" name="btnSubmit" value="Execute Test"/> 

     </div> 
    </form> 
</body> 
+0

경로는 무엇입니까? 이 질문에 대한 답이 도움이 될 수 있습니다! –

+0

@PaulVargas 먼저 maven 테스트 명령을 실행하여 maven 프로젝트의 경로에 먼저 액세스해야합니다. –

답변

1

내가이 같은 문제가있을 때마다, 나는 System.getProperties()을 모두 인쇄하여 내가 원하는 정보가 존재하는 경우를 참조하십시오. 이클립스가 제공하는 유일한 정보는 속성을 통해 올 수 있기 때문에 아마 여기에서 할 수있는 최선의 방법 일 것이다. 제공된 속성 중 하나에 정보가 없으면 시작 구성의 일부로 직접 제공 할 수 있습니다. 실행 구성 설정 항목에 workspace_loc 변수를 사용할 수 있습니다.

관련 문제