设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6485|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- W( a! a' |' |; u7 |3 k6 k1 r# b6 i6 J* {) e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 e7 u9 M& `. W# m: S! V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) q) r  @# \6 w# e7 t6 b4 g
swarm.SignatureNotFoundException
6 K6 Y- }& A9 k) z0 W        at swarm.Selector.<init>(Selector.java:76)
3 f3 f6 }2 d  p- S$ ?        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) C# Y  L1 W/ ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" F) V% X( r4 b8 a1 S8 p+ I0 n& S! N- @# j5 m: I: _6 j

5 a! A+ U& x# ~5 P9 s& y+ Pimport swarm.objectbase.SwarmImpl;$ B0 `3 P3 G4 E! ]: }' H# c
import swarm.objectbase.Swarm;6 u7 ?3 L* C7 _8 x* P# C
import swarm.activity.ScheduleImpl;& T% Z5 R4 }8 a- l
import swarm.activity.Activity;
; j1 m  W/ k9 simport swarm.activity.ActionGroupImpl;/ T' i/ a2 J! z) Q" F
import swarm.collections.ListImpl;3 X' J$ N: D& r, U8 M
import swarm.defobj.Zone;
6 \6 t6 g( s. L7 H: X; A2 X. e0 Jimport swarm.Globals;0 r7 W. p5 N4 A. N
import swarm.Selector;/ t3 |# O, o; ]3 z/ J0 D
import swarm.activity.ActionGroup;
" R% S. w% r$ h7 L; P7 oclass Agent {
5 y" p8 x7 E  Y0 G) t9 o; Z2 p9 o/ X        char id;
/ J  @8 x6 [+ Z. x" W1 D/ T0 n: ]9 e6 \
        Agent(char id) {
8 }+ E9 m8 P! H- [+ `6 l- j0 v                this.id = id;$ A% I5 J/ j* N/ |7 E( d
        }* [! U5 L3 l) }8 C7 [7 g

. G7 R2 D2 s5 O& G3 c& L        public void agentStep() {
. {0 I! U+ J5 E                System.out.println(id + ":" + Globals.env.getCurrentTime());( k, v( x2 S! Y% }# M
        }, D( J9 ^4 E- {! [
}
+ ?: x5 E+ u/ Z3 v# d+ E0 f2 R8 `
public class ActionGroupDemo extends SwarmImpl {
9 i& G' q0 i( ?        ScheduleImpl schedule;: v2 x0 [5 ]/ }1 f1 q2 B- @8 h: W
        ActionGroupImpl actionGroup;- }$ R4 v8 t, K+ h/ [
        ListImpl list;
9 S4 _3 \# x8 R        char Id = 'a';
3 R+ ^( U- v8 a% G( m+ g
& `$ `- h0 e8 F/ P1 f        ActionGroupDemo(Zone aZone) {( A5 N) {4 k% U+ V: Y; O" T4 Z2 h$ z
                super(aZone);
; v( e3 F9 ^( Q4 N. r1 N7 K                list = new ListImpl(aZone);5 F% p9 D, D- B: W9 |5 `  S
                swarmSetp();1 `+ n. [1 `1 x4 B5 P9 h+ x, ]
                actionGroup = new ActionGroupImpl(aZone);! j; t7 E  w- |$ k) e% I3 e; m
                schedule = new ScheduleImpl(aZone);
# o; z* ^7 Y$ O3 l& K                try {
+ R' R  b7 q# r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: U+ z* h2 w6 q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, U9 \' |& c) C( O% Z) d' i                        
6 f6 M/ a& Q& ^  G                        actionGroup.createActionForEach$message(list, agentSel);+ A: Y  U  F# F. h, A
                        actionGroup.createActionTo$message(this, swarmSel);
4 l4 H5 ?9 S; B+ U' y                        schedule.at$createAction(0, actionGroup);! F$ n, h: {. ?( B
                        schedule.at$createAction(1, actionGroup);
" B6 K0 n4 ~+ I4 d7 ?) v                        schedule.at$createAction(2, actionGroup);
8 U( ?& u2 j. e0 k$ p2 \4 a( h. m5 {$ k( h& z
                } catch (Exception e) {
& i% a0 F8 p4 Q) R5 g                        e.printStackTrace(System.err);3 c3 }/ U8 R4 E% X
                        //System.out.println(e);
3 s+ E& P8 y1 c9 w5 b& y5 I                        System.exit(1);
  Y  `+ ?8 g3 g# Y( Q                }
+ I' H4 ]; j% P0 x
1 |1 |( }0 Q- a0 }+ G4 b# O" c& Z! P- a) u
        }  W. l: Q" I6 Y$ U$ [5 O

: _9 }- s# a) c        private void swarmSetp() {% y7 I1 n8 W0 V: M1 H4 u- f- W( m
                list.addLast(new Agent(Id));' o) d- s8 I9 |0 k9 p1 X
                Id++;" L: p& _9 k. |; {% l
        }
" ~; {% ~& r+ K- m# i
  f- z2 N/ {, u+ P* d& ~        public Activity activateIn(Swarm context) {
  M+ Z$ F7 }5 _  e  a1 |                super.activateIn(context);2 j" s6 `5 H* D# F7 N
                schedule.activateIn(this);3 G; o0 u1 [0 T9 V
                return getActivity();$ d& Y& D' E* N9 ~9 E8 h
        }4 l6 }( _% Q% v  D

( w$ C3 \$ }+ j        public static void main(String[] args) {
3 _# E6 N4 J4 u8 |0 N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) J, P5 r) w  G+ k( v8 j                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% r' A! x9 f0 ~2 [                swarms.buildObjects();
' y  D6 S- U& X; t: Y; s                swarms.buildActions();  N& g+ V8 V' b6 w5 G' ~% Q
                swarms.activateIn(null).run();
) q4 g- E$ i. c# @) o( H        }
3 I, x/ R4 B1 D/ o5 p  A/ P8 T" s5 d( O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-1-29 22:32 , Processed in 0.020820 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表