设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10022|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 k' D/ F. j- y, b$ n: v4 L" ~9 c2 O* a* I% ^9 m' j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ h0 V; z: O0 h( |( _+ _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( B/ X) S4 ^' k/ A% [8 _# A1 Xswarm.SignatureNotFoundException
0 C1 @$ o$ C! S7 J$ D        at swarm.Selector.<init>(Selector.java:76)
' M" H0 n: p8 n: c: y1 E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' y! Z% R% {8 x7 t! p; ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- Y2 Z6 l1 I2 M  H6 V, o6 T5 d
# K$ x% w/ L( W" c! A

, z! M$ O5 n  limport swarm.objectbase.SwarmImpl;
8 B$ e* q1 T' p( N% l7 iimport swarm.objectbase.Swarm;* a. H! X; @3 M8 w5 c- d0 E2 q9 u
import swarm.activity.ScheduleImpl;
0 M/ Y* |: |; [. O0 wimport swarm.activity.Activity;
& S$ ~' ~6 p& U/ U: s. ]import swarm.activity.ActionGroupImpl;2 a- j  k* `( Y* Y
import swarm.collections.ListImpl;. X) i: S7 u# M7 K$ J$ l5 c  _
import swarm.defobj.Zone;
, R" [7 N* O& j( ?4 @import swarm.Globals;$ J1 ^/ ^( h9 ]4 \# T
import swarm.Selector;: r6 t' h- \$ a! [" i  C6 \' k
import swarm.activity.ActionGroup;
. [7 \$ h5 z- |- t3 Rclass Agent {
% m. K/ x) J/ \" S. E        char id;
4 }* p7 ]4 M3 S/ A! `4 o/ l. A5 k2 e2 L" g7 Q: Z
        Agent(char id) {
" B' v: u! ?6 Z( U1 n                this.id = id;1 {) d- S9 N8 @0 J" {
        }. G9 T0 P5 n# z

: D+ ]* ~* a5 _, Y0 Z4 R0 W        public void agentStep() {
) x9 E0 |" z: r" I& `1 K2 f% E" f; ~                System.out.println(id + ":" + Globals.env.getCurrentTime());# Z  g* w- w. E9 u
        }
1 U' r1 X0 Z/ |* Y) d& s2 z}3 ?7 h. X( o- i( N5 l- V

/ t  y( X: [- \2 _7 fpublic class ActionGroupDemo extends SwarmImpl {4 D' K4 P0 q- F2 G) A3 M
        ScheduleImpl schedule;
2 J+ f! p3 n& ^        ActionGroupImpl actionGroup;
1 w/ F- H+ ?" c8 G8 C) p! A        ListImpl list;8 X1 t6 i$ I4 V1 K6 I
        char Id = 'a';
9 F" c% m9 A) K' P6 J; u  q
" X# e) T) H% r$ h4 n/ N        ActionGroupDemo(Zone aZone) {
$ l" u5 W+ i" m  W$ T2 z% l                super(aZone);
. i! b2 h; q  F3 ?                list = new ListImpl(aZone);
. g% A) S  C6 ?+ V' H0 M+ G" m                swarmSetp();( E% [3 ~9 ^2 P/ }
                actionGroup = new ActionGroupImpl(aZone);/ Y5 |3 b4 ^$ m  H% d
                schedule = new ScheduleImpl(aZone);
0 h/ L, T$ c  I- g                try {4 E2 ~. A) @0 F/ d7 Y; P( g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- ~* E1 l8 Q) t, g' k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& E6 [7 ^* [0 L8 l                        
) T8 F' S9 l! l& z1 G1 j9 j                        actionGroup.createActionForEach$message(list, agentSel);
5 F$ @) b; o5 M+ ?6 f4 N/ f                        actionGroup.createActionTo$message(this, swarmSel);
/ A! A+ i' ?2 e: n/ s: m; }0 |                        schedule.at$createAction(0, actionGroup);
5 N. F- d2 B3 e: W                        schedule.at$createAction(1, actionGroup);  S* q# {8 G# P
                        schedule.at$createAction(2, actionGroup);
, W' `% A, z- v# u- E( b- X* R( d* Q1 X# o6 S6 Q/ A7 M
                } catch (Exception e) {
4 h& I% z7 v/ H# i' D                        e.printStackTrace(System.err);" k7 ^2 \* [  \, w: F
                        //System.out.println(e);
3 H0 C% K5 B# l6 |/ o                        System.exit(1);5 v) k1 X/ ^# Q9 e0 w
                }+ E3 f4 r2 V0 Q) K) f; e

: m; @+ T5 E; i# y" q) w0 T) o' u) U5 y
        }
! L. P; m" s8 y/ G& z
1 ?( ?8 k9 Y8 u        private void swarmSetp() {% K- T! Y! b+ Q
                list.addLast(new Agent(Id));
5 @! X$ J8 g8 {. _0 S                Id++;& I) c3 I  q% h5 R
        }" W! i4 ]  C. W9 L

: O4 _: C# a& V8 j/ ?        public Activity activateIn(Swarm context) {' `  G% @; b9 c- s& M
                super.activateIn(context);+ @& g' F/ x) K# _# e7 z  s
                schedule.activateIn(this);
/ n; G* C, z, g7 _( z0 M7 Z                return getActivity();4 j; i" ^6 `2 R  R5 `+ R
        }1 s, E' l! b2 r& |5 o: ?

. J$ ]( r: i" G$ t( X+ O4 j( O        public static void main(String[] args) {
8 Q  N. n. O# o6 V! f2 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, J1 G7 q9 f+ c/ Z' s  ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 a, K: j8 [4 }, s6 R8 @# T7 k# F                swarms.buildObjects();) o* ^8 T8 m3 S
                swarms.buildActions();& s* s4 P5 ~- E+ r, [2 c
                swarms.activateIn(null).run();
* P  }4 R; ?7 `7 ?        }2 P3 p1 _' o1 |6 w. u; w" g' Y

$ t  ]- A" _& F3 X0 d5 L6 K- \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-31 22:46 , Processed in 0.014517 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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