设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5992|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 b* D8 M& P8 Y
* G6 C4 M1 c. v) W, H6 s: l- e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" c- T/ x" ?: I8 k. J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 Z$ ?( q3 ~* F
swarm.SignatureNotFoundException
, V$ ^0 f6 t9 \/ i        at swarm.Selector.<init>(Selector.java:76)
. a8 ]' S3 C( [- r- T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 x, c; _* h7 s5 ]6 X2 K        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 h0 t( M6 g- R4 F8 u# a# Y' A# i/ v
6 s2 `2 l0 I* N! F
import swarm.objectbase.SwarmImpl;
6 R! Q2 ]7 S. x8 c: G9 Pimport swarm.objectbase.Swarm;
, D9 s4 E+ o$ U8 [3 K6 timport swarm.activity.ScheduleImpl;
+ o- u$ D7 B" |import swarm.activity.Activity;
% f4 @1 K$ t2 [9 R7 c+ T5 fimport swarm.activity.ActionGroupImpl;
2 k6 q) U4 g2 p2 y4 `import swarm.collections.ListImpl;
. t; K4 L5 ~/ R  Q5 v; Y) Yimport swarm.defobj.Zone;
* U5 _: v0 {2 \. \( Pimport swarm.Globals;
/ k* Y+ B+ t$ F" H6 rimport swarm.Selector;  |  X9 I/ j3 X: o
import swarm.activity.ActionGroup; ( Q2 K4 `+ D2 ^' u- f6 B" A+ @
class Agent {
7 I) v0 H- |6 G7 j& P( i- U8 l        char id;
" A: q" i; Z0 T+ i" H( K: M7 B- l  U; s+ I
* t) {5 M; k( _/ E% Z6 w        Agent(char id) {* g- u* ~8 `- x7 i2 j) D, ^! J5 I& x
                this.id = id;" f. h+ y0 K7 Y# @4 w' [+ m
        }' m4 [& G. `. p' [1 g) x8 H# P
) N6 C- f( Z. e8 q+ ?- |
        public void agentStep() {
6 n' p% @' T! _9 R7 t3 r                System.out.println(id + ":" + Globals.env.getCurrentTime());  s; R- H  X: l4 `
        }6 q) U5 r: ~* N' l0 ?/ N* C
}5 s1 J, I$ Z% J; _
; ]8 l1 N9 L/ j; b9 R
public class ActionGroupDemo extends SwarmImpl {
5 [9 X$ y7 P# ^        ScheduleImpl schedule;
1 Z( l6 o9 {! G( ?3 R1 M        ActionGroupImpl actionGroup;
  t% D* n& C5 Q& k) W1 T8 c8 Z        ListImpl list;9 g# W; v- n9 ~% o$ O  j
        char Id = 'a';( W8 D/ Y  O& H+ o

" D1 R7 h* O: G, |        ActionGroupDemo(Zone aZone) {( V: C, x/ q0 ~9 c* F& _
                super(aZone);6 J5 u7 T; q( s# e
                list = new ListImpl(aZone);( G3 Y7 n) W9 [* i- C' p, K
                swarmSetp();
$ s7 e9 W# C1 V6 D                actionGroup = new ActionGroupImpl(aZone);
( z% R5 }: x! y5 `' S                schedule = new ScheduleImpl(aZone);% x( n; v. |8 w5 L. K& V( q
                try {
3 q6 G, c5 {6 x% p& O3 W/ h0 ]                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. J! @+ K) R! B) h  j* S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 [4 H; @- t. f: N$ o                        
& H- w0 m# L2 k' j9 S                        actionGroup.createActionForEach$message(list, agentSel);, Z5 v2 n" s& e
                        actionGroup.createActionTo$message(this, swarmSel);
% l; D% K- {1 ^                        schedule.at$createAction(0, actionGroup);3 i& h# P- I1 f' \4 Z7 \" P
                        schedule.at$createAction(1, actionGroup);7 _5 ^& K# r3 M1 ~2 l5 C
                        schedule.at$createAction(2, actionGroup);: z( o" d1 \$ F9 Y+ e2 G- n

7 O9 P5 ^; w% p1 |8 T+ Y' B1 v0 K. m  o                } catch (Exception e) {. a; }! O" ?# x8 y
                        e.printStackTrace(System.err);) j- c; U7 g# ^, p7 E
                        //System.out.println(e);
7 ~1 X5 n/ c: r  V  i7 l( f8 f                        System.exit(1);, s; I6 O0 e' J) Q9 d, J
                }" t; |" Y, J0 j8 r. A" D
2 D/ m! S. Z: }) y6 r0 j6 e0 W

$ m" V6 `( T8 P# \: {9 a/ }( ?        }5 g; D+ s4 X# W; c4 `
$ P  t* C3 V: P1 I
        private void swarmSetp() {# b- G* K7 {; r
                list.addLast(new Agent(Id));
* `8 r5 b% O4 h( I: ^; o3 J9 u                Id++;: r! Z* D% }& q$ A* W
        }7 l$ z+ R0 E- L1 e
4 @: n, w5 l! U& M
        public Activity activateIn(Swarm context) {
$ r2 T: J9 N0 m                super.activateIn(context);; n( h# h: A4 h' e- `9 s  D
                schedule.activateIn(this);
. K* F! x7 l( }( [; S. o                return getActivity();2 I  j3 l3 l2 T, v# x) S# R6 }
        }
; y  L+ S2 E6 H  C% w# k
: U( s/ C7 v' q* y        public static void main(String[] args) {
% f0 I' n; d2 E/ `4 h8 o' Q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ Y8 V% R1 V$ B2 J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 {, i/ s, e. J/ T                swarms.buildObjects();( L+ a' M, Z+ n/ n
                swarms.buildActions();
1 w8 k7 ^+ V3 s. I+ |4 f                swarms.activateIn(null).run();6 R% }& m: Q3 q0 k
        }4 b7 ^0 x! n6 r) q7 z: S- }4 w

* d3 k- b( R- ]- |- d# e, F- z$ B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-13 08:01 , Processed in 0.016653 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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