设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5053|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * d, V1 }, Q5 P- k2 g

" l2 M9 U5 C# ?6 z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 u3 i! h9 E+ ]/ U7 f. r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 i% M! M0 U1 R( l" i) W. V
swarm.SignatureNotFoundException4 w9 G3 p: D, x) d
        at swarm.Selector.<init>(Selector.java:76)
* K- }: k) V6 ?2 e% ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: h% R1 o" }; c( e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 B" ^9 o/ p9 T. t
8 K' E, k) s: A4 f0 W/ p# O( D
/ G( y9 o( _7 ^. ?; h0 c$ Zimport swarm.objectbase.SwarmImpl;. A* ~: E8 j4 D' X9 J
import swarm.objectbase.Swarm;
, e0 m" E1 ~3 e& U. \) a2 b. n  \1 P+ Eimport swarm.activity.ScheduleImpl;* Y* H8 V$ ]. Q3 s: ~5 V$ g
import swarm.activity.Activity;
0 u, C! b$ F9 i  b! x' {import swarm.activity.ActionGroupImpl;$ }- H6 h, ?6 \9 m
import swarm.collections.ListImpl;3 B9 n2 j4 D; G! ]
import swarm.defobj.Zone;
$ z5 C. n% a8 }$ C$ x' Y: u- u6 R7 himport swarm.Globals;* Y, r$ H; \+ D! q
import swarm.Selector;- t: b3 ~- y9 K5 t% w) z
import swarm.activity.ActionGroup;
% [; A2 |) l8 n1 ~5 lclass Agent {
! i0 \$ y7 V% [5 O9 B8 h        char id;9 u0 o3 ?$ W+ ~, p) I2 E% O9 J9 B
/ Y) V& O3 m9 `6 p; J" `3 G- ~
        Agent(char id) {
. l! ]7 Y; y) }; G                this.id = id;; |  x- m. P* A6 H* m. E5 G
        }
; G5 }1 N7 j$ `1 C0 _# M9 I5 H- p5 l- S% N
        public void agentStep() {$ [2 K9 K5 i8 n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 E/ l( U0 @, L$ ]        }
1 L- c+ }5 n7 R}
1 z7 F, \" V4 r1 i4 @7 l3 t! x7 X  k: e. I" [/ H- E8 I
public class ActionGroupDemo extends SwarmImpl {) q7 N0 c& t9 h6 P5 g% }) o
        ScheduleImpl schedule;
! @; m8 S6 i* }# y& u6 T        ActionGroupImpl actionGroup;: y$ q2 s! A/ J8 L8 V# D8 T5 v4 P
        ListImpl list;
! O8 z. i, f2 z8 c        char Id = 'a';
8 q6 B" D' ^# U# c- L# ?, l' y& a6 B
6 x) ]4 |0 K$ D9 O2 T        ActionGroupDemo(Zone aZone) {7 I3 ^8 E+ O0 B5 N5 _
                super(aZone);) A& F8 `& o" h' y1 J
                list = new ListImpl(aZone);
( T! @1 Y9 B' }* `$ m7 b                swarmSetp();  ]: R6 i8 o2 F' [
                actionGroup = new ActionGroupImpl(aZone);8 o3 h/ g& _- ~3 q
                schedule = new ScheduleImpl(aZone);
8 t1 q9 e' M0 k; V# K                try {5 r0 `6 {1 G; q; l% ^7 h8 w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# K! {* ^* L) H  h) P$ P1 @
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 }' q1 w: ]0 d9 y5 l                        5 z* F/ E5 `" S
                        actionGroup.createActionForEach$message(list, agentSel);
# y. _% \! L! m* C$ \2 G                        actionGroup.createActionTo$message(this, swarmSel);% q& d* r; h% S% ]
                        schedule.at$createAction(0, actionGroup);
+ N7 K& B$ [8 H2 D                        schedule.at$createAction(1, actionGroup);
8 D$ d* o$ r6 O* M5 q                        schedule.at$createAction(2, actionGroup);
! i/ i8 S6 R3 f  p- V" G7 O) ^; ^& Q( L
                } catch (Exception e) {5 j; A; \" U9 x: H# S5 B
                        e.printStackTrace(System.err);6 c7 }, V4 D' r4 i* M5 p
                        //System.out.println(e);0 R( A4 @: r" Z9 N8 i) Q
                        System.exit(1);/ I6 x. x& ^( T2 c& F
                }" ?2 I2 N" E1 c7 W
. P) ^7 B9 l6 C# l8 w& z; _

7 Z* P4 a% j$ E3 C        }2 b1 ]' {# ?- M- `$ c. Z/ W

6 R: j( z: p/ r+ ~- V6 e        private void swarmSetp() {
0 H% Y1 X' R6 }- J+ c                list.addLast(new Agent(Id));
5 \* U% w+ h* ]6 K' C                Id++;: R% q- \2 K* Q- Z' ]5 m- x
        }/ r" I- Y1 e7 A
4 P4 @. f  _" c' y/ O; E& n
        public Activity activateIn(Swarm context) {3 g" J. }1 c  I3 g4 A. D2 a( y
                super.activateIn(context);4 I3 Y& y+ J* f
                schedule.activateIn(this);; Y# M" j5 `' a" z
                return getActivity();5 _+ l# J4 k" X# ~2 i+ \
        }. s. `% Q% d: u0 q3 y

4 i" {: ]1 I7 |- L+ ]9 v/ v        public static void main(String[] args) {
& `, `% X+ o$ j  N# g$ Y/ J# I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% h  n2 j, z* [. t8 J: U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 a4 Q9 J: `2 Z7 Z2 m                swarms.buildObjects();
6 ~# `) x7 I& n, }' o% M9 n                swarms.buildActions();2 y1 a) V" D/ d5 }# Y
                swarms.activateIn(null).run();
' a1 c+ l; H1 s7 z9 U        }# X' g7 p6 R  e

, k1 E3 o+ c! m% t0 v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-23 06:26 , Processed in 0.017650 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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