设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12028|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 a, t7 L# N; @0 s

; r% R* _3 Y' p$ _* a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ ]% Z9 W2 U& z( @6 g/ b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ S0 V' |9 n/ R% mswarm.SignatureNotFoundException
  j- n9 P  U1 D2 ^        at swarm.Selector.<init>(Selector.java:76)2 N4 k7 P, }0 ]- c" n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& f+ J! N9 j% l& D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( w' c! a0 V* o  }

  i4 a$ ^( w+ a9 v. k  D8 X1 c' Y+ X& ]  W
import swarm.objectbase.SwarmImpl;0 w1 l+ f- l% ~5 z( V! X
import swarm.objectbase.Swarm;$ h6 K( {; n9 G
import swarm.activity.ScheduleImpl;& _( x) A$ o7 u8 N  E  w' s
import swarm.activity.Activity;0 P% ]- N! T7 |" [2 V$ B
import swarm.activity.ActionGroupImpl;4 O; B; z0 S% m/ m& H6 w$ S, }9 ~
import swarm.collections.ListImpl;
5 K8 g6 i5 O2 O( J; Himport swarm.defobj.Zone;
$ E! o& e% y' d, |1 Limport swarm.Globals;
; q. Y, S# w3 x  `2 g1 @- fimport swarm.Selector;
" }* G1 X4 [5 q; c% T8 t4 mimport swarm.activity.ActionGroup;
/ w, r( y4 T! e: Fclass Agent {( G0 w- M% J; }0 I0 P; W; e
        char id;
; B! Y8 ~5 _. Q  F4 K& _& x
3 m1 R/ @/ {2 x0 |: c& Z0 s6 F        Agent(char id) {
. b( V. u4 F" N# Q: a8 U                this.id = id;
2 S9 q; [9 G/ L. ]+ e) \        }+ m. X) Q" L/ k- o8 A* C4 P7 Z  I3 i

- r1 C' d. `$ I, b- h: q3 b        public void agentStep() {
% y0 l4 [5 L/ s8 q# j                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 a) r$ I: ~, D# \5 [        }
  x+ @- `4 F. O1 p! W; Z# L}2 i, O; s$ {, ^; B
& Z; X6 h/ U* \6 f% j4 O$ H
public class ActionGroupDemo extends SwarmImpl {) U- T! ]7 H' A; d
        ScheduleImpl schedule;
: T  P  s/ b4 p        ActionGroupImpl actionGroup;- j$ Z& P9 `8 W: s; B7 y
        ListImpl list;
- @& r+ W9 m' [7 E        char Id = 'a';5 C3 ?" e* M% h3 c, G

& t2 N  ?1 X; S: |- p, {        ActionGroupDemo(Zone aZone) {
2 p/ c- b) R! V: A# B                super(aZone);8 d, w) P1 P/ I3 O" w5 y
                list = new ListImpl(aZone);) k3 j  k3 O/ F( p% p- n9 O
                swarmSetp();' }$ d5 T/ x7 h. _
                actionGroup = new ActionGroupImpl(aZone);
, E; |3 ^; n, x: K( p8 \7 \                schedule = new ScheduleImpl(aZone);! j- Q; P$ Y( k" `
                try {. V" \% r8 l, p
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 G/ a" M! \- m0 c' W* h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 v! \" |$ U8 S1 d- {) U# V                        - x. i8 ]2 ?6 u" h4 E  L9 K; U
                        actionGroup.createActionForEach$message(list, agentSel);9 `, H2 U! c8 z8 |5 A) a
                        actionGroup.createActionTo$message(this, swarmSel);$ I7 `8 k1 |! n% ~4 s4 q! o  B8 |
                        schedule.at$createAction(0, actionGroup);
$ n- [0 x+ M* U                        schedule.at$createAction(1, actionGroup);
% C! w0 p0 f5 R( O  S* a8 Z+ a                        schedule.at$createAction(2, actionGroup);% p* R' [# ^( S; I4 w

* H# m3 H  ^3 |, H                } catch (Exception e) {& M! P7 ~. K& b. ]" [
                        e.printStackTrace(System.err);
/ l9 s3 u" x8 f3 j. w& ?, N                        //System.out.println(e);* f8 s+ S! {5 i
                        System.exit(1);
% S7 x% X: H( p% ^7 I                }
2 ?& |+ \8 l7 i' N+ l9 t
% w1 e! a7 E5 O9 Q% ^$ `
) n$ {7 z+ M8 @        }" D& e& l4 C( e
/ U# v2 e+ }+ b
        private void swarmSetp() {  z4 n) }- |9 E
                list.addLast(new Agent(Id));% z' S8 e- B9 Y( k& Q8 I
                Id++;
" c# I5 B+ O  I9 D" F: A& T  Y+ ]" ?        }
# v3 B, O, t$ x% F8 \9 X
8 V7 y! r3 ^9 Q( N. m! h* |! w        public Activity activateIn(Swarm context) {. N8 |9 w1 g8 Y3 D. r- B
                super.activateIn(context);: C0 S; W' T# ?; P6 `7 b$ p
                schedule.activateIn(this);
. _, o- ?/ Y6 i& W0 \                return getActivity();  ~4 O9 o/ Z: x1 ~* h
        }; {: h0 S* B3 T3 X' d

/ {3 E/ ~+ P2 O$ K, b- N1 _. O& f        public static void main(String[] args) {& x/ @7 U/ V4 @& F4 C3 U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& Q, P- p5 Y" G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 E; z1 ?( _* @& v4 C
                swarms.buildObjects();* N2 r$ [, p7 F  v8 n; f
                swarms.buildActions();
# q$ t$ v8 ^2 j: h/ ?; C- I% t) C7 c                swarms.activateIn(null).run();' M) ^& c; v+ l
        }  H4 J( E. t0 E+ l4 L

7 c; F7 G0 D& p! |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-28 14:22 , Processed in 0.014666 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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