设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9044|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 r3 k. H0 z- N; U$ n3 K2 t8 j
: a! x: g0 h5 }3 o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% t/ U) w3 b* `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! ^- G" V4 ~' b/ p7 eswarm.SignatureNotFoundException, B- v+ x- ]5 m) l, G1 W
        at swarm.Selector.<init>(Selector.java:76)
$ R# @$ @- L, G1 `' U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' [3 X% Y* Y0 w4 k+ n9 I- N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  p) |! W9 M3 P( x/ f+ F( n3 @7 Y/ w9 }% }  e. Q, @; i; S; n& c
0 i" N# y1 d8 @
import swarm.objectbase.SwarmImpl;
1 ?' @9 ]: Q0 J# J4 Y* D3 oimport swarm.objectbase.Swarm;
- E- {) {6 D( O2 Eimport swarm.activity.ScheduleImpl;
$ ~( g$ m2 h% x. `2 l0 rimport swarm.activity.Activity;
: i0 K; {/ b0 k1 R- Yimport swarm.activity.ActionGroupImpl;
" ]6 x4 Q* d& H1 T- q! j! g- A( Pimport swarm.collections.ListImpl;
9 U; \* _3 q& gimport swarm.defobj.Zone; 8 j& w+ y/ t$ R% c6 B
import swarm.Globals;2 V7 H! b% b5 B- f
import swarm.Selector;, P1 `! b7 i2 x9 ~, g' F
import swarm.activity.ActionGroup;
* L6 y$ T/ M6 P0 Gclass Agent {9 c/ V6 u+ T* }; D7 M) ?
        char id;
' ]9 y' k- ?% a8 d& [% A! z: X7 i; ~3 b7 q# O- Z" w! ~! p
        Agent(char id) {% e5 j, o+ _6 R+ \+ b( C) x  m
                this.id = id;
$ E* A1 |1 u, g9 Y- T1 w        }, ?1 ]1 V4 i1 x
8 W3 x2 @7 |: J& G8 S0 T$ Q  z
        public void agentStep() {2 U  b/ ^7 v) a  y, L
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# f' q. ^- I- h# N        }
5 e  x4 a3 @: W5 S+ B! i}2 h+ q2 [: A- s7 s
9 k0 _+ \& P; ~5 r! q. ^9 ?
public class ActionGroupDemo extends SwarmImpl {
; d3 [2 V0 |7 q6 v/ S        ScheduleImpl schedule;
/ ~5 B. _: V2 D! c        ActionGroupImpl actionGroup;- p+ I% s2 ^5 b0 D* K1 w
        ListImpl list;+ [7 n/ }  M% w8 A- H) U, q
        char Id = 'a';
. `; a# v) {8 _
' p; u  r4 e& M7 N% B3 s        ActionGroupDemo(Zone aZone) {
1 s; n. E# H: e                super(aZone);
- g9 H3 h9 q/ P5 |                list = new ListImpl(aZone);- K- c" p: w, e; J9 C9 E
                swarmSetp();" S/ N2 F' W7 v# Z6 k
                actionGroup = new ActionGroupImpl(aZone);
2 i" h9 e6 Z: Y) {- p" r                schedule = new ScheduleImpl(aZone);
6 O# |# n* o% N7 ~8 b. Z                try {5 |/ X( K6 m7 Y4 T# G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 X  E( i8 ~3 {( I& D3 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 m( |6 t5 z- C- ^4 P8 i& _                        2 ^  |! n+ o6 Y' {
                        actionGroup.createActionForEach$message(list, agentSel);5 v/ q2 O$ y/ Y; m8 [/ ^
                        actionGroup.createActionTo$message(this, swarmSel);8 {8 E! }3 I- d: p6 s1 `+ e$ p) m
                        schedule.at$createAction(0, actionGroup);) l+ G# y3 l* D: ~. X! a1 s* G
                        schedule.at$createAction(1, actionGroup);
+ @+ {. ~1 g# _% D" W6 J: W                        schedule.at$createAction(2, actionGroup);( W0 U) a0 ?, k' q1 d

! o  ?* q/ P% }                } catch (Exception e) {! k2 ^! d& d' H& \" f
                        e.printStackTrace(System.err);
& m+ r  i# w, j& b4 ~4 C3 q0 p                        //System.out.println(e);
1 K( \6 M. s& M1 S                        System.exit(1);
, b3 g2 ~  g  ]- Z1 [; S, e& B                }
" g7 A/ O0 }( Q  F2 K2 r3 I3 p: \' Q( T$ x" a/ H4 v
+ k* T0 D* A+ p
        }
0 u5 S, B0 Y% o' g, \3 }. ^0 o  T1 `; C" a* ^$ ~
        private void swarmSetp() {
( N# y% _9 M: f- [                list.addLast(new Agent(Id));$ W  o2 U) m9 N5 E
                Id++;
! N  b. C4 |2 a. f        }
- N* E$ m! a& A' Q) I8 O; r4 d) e: ]& L" z
        public Activity activateIn(Swarm context) {: Q. \# J* e3 H: ]  m9 g
                super.activateIn(context);7 b2 h: W. w& T. D
                schedule.activateIn(this);
0 q" s4 A" @% Y0 k2 t( O                return getActivity();/ @1 R9 {# A2 v: I8 w, E/ ~  R
        }
4 `! C5 O' }. ?8 g4 \- s2 o* q- o2 s5 ]) w: P
        public static void main(String[] args) {2 s  i/ Q7 g7 `6 r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! ]# R1 ?; Y' e: `
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) O0 n# m. r/ ?9 f7 y
                swarms.buildObjects();
$ W- k; O9 `; X5 w8 p0 @' Q                swarms.buildActions();/ d: _$ \0 \, k8 |5 \& Q" K+ a
                swarms.activateIn(null).run();* ]  l8 h) a0 m& f2 i* a' T
        }3 R6 l/ w/ g5 K' h9 D* ~

5 s1 C5 K2 E) J. B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 23:29 , Processed in 0.020522 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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