2014-04-05 3 views
1

나는 이클립스 IDE를 사용하여 프로젝트의 빌드에서 외부 jamonapi-all.jar을 추가했지만 jamonapi.monitorfactory을 사용하기 위해 모듈의 실행 시간을 식별하는 스프링 프로젝트를 빌드하고있다. import com.jamonapi .monitor cannot be resolved error을 얻으십시오.이클립스 IDE 가져 오기 오류를 해결할 수 없습니다

package com.blog.samples.aop; 

import java.util.Date; 
import org.aspectj.lang.JoinPoint; 
import org.aspectj.lang.annotation.After; 
import org.aspectj.lang.annotation.Aspect; 
import org.aspectj.lang.annotation.Before; 
import org.apache.log4j.Logger; 

import com.jamonapi.Monitor; 
import com.jamonapi.MonitorFactory; 


@Aspect 
public class PerformanceMonitor 
{ 
private static final Logger logger_c = Logger.getLogger(PerformanceMonitor.class); 
private final String MONITOR = "PERFORMANCE_MONITOR"; 
private Monitor monitor_i; 


@Before("execution(*com.blog.samples.aop.CalculationService.dummyServiceMethod())") 
public void startMonitor() 
{ 
    monitor_i = MonitorFactory.start(MONITOR); 
} 


@After("execution(*com.blog.samples.aop.CalculationService.dummyServiceMethod())") 
public void stopMonitor() 
{ 
    monitor_i.stop(); 
} 

public Date getLastAccess() 
{ 
    return monitor_i.getLastAccess(); 
} 

public int getCallCount() 
{ 
    return (int) monitor_i.getHits(); 
} 

public double getAverageCallTime() 
{ 
    return monitor_i.getAvg()/1000; 
} 

public double getLastCallTime() 
{ 
    return monitor_i.getLastValue()/1000; 
} 

public double getMaximumCallTime() 
{ 
    return monitor_i.getMax()/1000; 
} 

public double getMinimumCallTime() 
{ 
    return monitor_i.getMin()/1000; 
} 
public double getTotalCallTime() 
{ 
    return monitor_i.getTotal()/1000; 
} 

@After("execution(*com.blog.samples.aop.CalculationService.dummyServiceMethod())") 
public void log(JoinPoint joinPoint_p) 
{ 
    StringBuffer sb = new StringBuffer(); 

    sb.append("\n"); 
    sb.append("*======================================"); 
    sb.append("\n"); 
    sb.append("*  PERFORMANCE STATISTICS  *"); 
    sb.append("\n"); 
    sb.append("*======================================"); 
    sb.append("\n"); 
    sb.append("* Method Name: " + joinPoint_p.getSignature().getName()); 
    sb.append("\n"); 
    sb.append("* Execution Date: ").append(this.getLastAccess()); 
    sb.append("\n"); 
    sb.append("* Last Execution Time: ").append(this.getLastCallTime()).append(" sec"); 
    sb.append("\n"); 
    sb.append("* Service Calls: ").append(((this.getCallCount()))); 
    sb.append("\n"); 
    sb.append("* Avg Execution Time: ").append(this.getAverageCallTime()).append(" sec"); 
    sb.append("\n"); 
    sb.append("* TotalExecutionTIme:").append(this.getTotalCallTime()).append(" sec"); 
    sb.append("\n"); 
    sb.append("* MinExecutionTime:").append(this.getMinimumCallTime()).append(" sec"); 
    sb.append("\n"); 
    sb.append("* Max Execution Time: ").append(this.getMaximumCallTime()).append(" sec"); 
    sb.append("\n"); 
    sb.append("*======================================"); 

    logger_c.info(sb.toString()); 
} 

답변

0

정확한 수입은 다음과 같이이다 :

 

    import org.jamon.api.*; 

그러나, 모니터 클래스는 어디에도 해당 패키지에서 발견 할 수있다.

+0

나는 봄을 초보자이기 때문에 자모 설치에 대한 자습서를 제안 할 수는 있지만 ... 감사합니다. – karthik

0
  • jamonapi-all.jar은 jamon 클래스가 들어있는 jar가 아닙니다.
  • 원하는 것은 입니다. jamon-2.75.jar입니다. 이 파일은 jamonapi-all.jar 안에 있거나 http://www.jamonapi.com
  • 을 통해 사용할 수 있습니다. 또는 Jamon 웹 사이트에서 얻을 수있는 jamon 종속성을 사용할 수 있습니다.