için yükseltme varargs yöntemi için argümanlar için geçerli değilim Java 1.7 ile birim sınama için projemde Mocikto çerçeve (sürüm 1.9.5) kullanıyorum Şimdi projeyi geçiriyorum Oluşturun ve Java 1.8 ile çalıştırın. Benim Java sürüm yükseltilmiş zaman Tür içinde yöntem, Java 1.8
benim birim sınama birinde benString learningId = "testLeaId";
String catalogId = "testCatId";
List<String> returnList = new ArrayList<String>();
returnList.add(catalogId);
when(myService.myMethod(Mockito.anyString(), Mockito.any(MyMapper.class), (Argument[]) Mockito.anyVararg())).thenReturn(returnList);
Bu kod bu kodla yöntemle
public <T> List<T> myMethod(final String sql, final MyMapper<T> MyMapper, final Argument... args)
aşağıdaki alay çalışıyorum şimdi Java 1.7 ile çalışıyor benim pom.xml'Bu 1.8'e ben ... şu hatayı alıyorum
[ERROR] The method myMethod(String, MyMapper<T>, Argument...) in the type MyService is not applicable for the arguments (String, MyMapper, Argument)
C:\somepath\MyDaoTest.java:59
Bu hatayı çözmemde bana yardımcı olan var mı? Teşekkürler
Bir derleme hatasıdır, bu myService'de böyle bir duruma neden olabilecek bazı belirsiz yöntem bildirimleri olabilir, yöntem imzanız ve sahte görünümünüz tam olmasına rağmen, bu MyService sınıfı hakkında daha fazla ayrıntı yayınlayabilir misiniz? IDE'nizde herhangi bir hata/uyarı almıyor musunuz? –
Ne java 1.7, ne de 1.8 sizinki ile aynı kod ile hata var, belki sizin testler modası geçmiş yöntemler, sınıflar vb. Atıfta bulunuluyor maven kullanıyor musunuz? Hiçbir şey akla gelir dışında bir 'mvn temiz yükleme', yapmaya çalışın, deneyin:/ –
İpucu: hala cevaplar ** herhangi bir ** geribildirim bekliyor. Ben sadece burada sorular sormak ve geri bakmak için rahatsız asla yenibies olduğunu düşündüm ;-( –