设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3544|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; B) d% z5 F, s) M/ D2 o: r, P9 Z
8 Q% N. ?# P. |& T* s% {. b3 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 v+ d( T* s  |- I6 }0 R- h* N' w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; e6 S/ _; f( \, t! ?4 w! d9 q' gswarm.SignatureNotFoundException
+ G3 f2 G; n# y! M8 z        at swarm.Selector.<init>(Selector.java:76)) n8 U6 ]# d: ^; O' x
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 q6 u; K- m3 {6 H$ K        at ActionGroupDemo.main(ActionGroupDemo.java:67)# A; m! d$ a! ?( q
* J6 q1 l6 m$ f# K* a5 k- y+ A9 s

9 v& d  Y: {) ?3 g& ~import swarm.objectbase.SwarmImpl;) h3 \5 R8 u: L, D6 H0 o2 W) W! K
import swarm.objectbase.Swarm;3 U: K! o2 }' R
import swarm.activity.ScheduleImpl;/ g: ^$ s& I* |5 \( f5 t( J
import swarm.activity.Activity;
' }2 ~2 M9 ^4 k/ oimport swarm.activity.ActionGroupImpl;: k: ^4 `  `1 r0 Z# c4 t
import swarm.collections.ListImpl;
1 Q% w$ {' G7 S" l, ^/ c4 }% S+ Jimport swarm.defobj.Zone;
, M6 E/ q( {; f/ ]import swarm.Globals;! @, b. _8 y9 I- y; C1 X; `
import swarm.Selector;  k  Y; E; W3 r7 d, g* N
import swarm.activity.ActionGroup; ! h' M- d% v4 R' B% C2 o% X2 D
class Agent {1 R' C0 z8 S& O( n
        char id;" Q9 D- z3 o8 d- _
9 ]# w. C# Q0 t! }3 d) D' J. G
        Agent(char id) {' @8 ~3 Q* Y  ^  |2 d4 @/ U
                this.id = id;
; C5 V5 p& `: T# J7 m        }
7 o3 a6 d: F* R& Z3 a% z! k) I
% D. [' Q" i" V( y1 K" U        public void agentStep() {
9 `( I5 w* n  Z/ e" ^, X4 R                System.out.println(id + ":" + Globals.env.getCurrentTime());7 ]7 {# D" w- q6 @
        }$ q0 E* D2 U1 v: Y& O. T
}
) H  E# }2 [6 q' F
2 Q( A; ~1 r$ Z# U+ r$ w& _public class ActionGroupDemo extends SwarmImpl {
; G, K4 J! k5 m/ r. u+ o+ F1 y        ScheduleImpl schedule;
# T% t) U7 l8 W" ?6 [2 _; f! R5 A        ActionGroupImpl actionGroup;: s8 r5 P  D+ e1 o8 I
        ListImpl list;9 N$ K7 f. e8 J
        char Id = 'a';
  B$ ?7 S" @- t* M3 S" d
) m# [1 _2 B- V( `        ActionGroupDemo(Zone aZone) {/ a5 ]/ T) r: G  j) ~
                super(aZone);2 g* ]0 \' L0 m
                list = new ListImpl(aZone);1 O; I% c. i( g" {# V
                swarmSetp();4 w9 f' S. w! d3 {; x- O! W
                actionGroup = new ActionGroupImpl(aZone);
" w& k1 S- ?' H9 B5 v                schedule = new ScheduleImpl(aZone);# x+ J5 c' Y* U
                try {
$ N5 e. w. N: [$ E, q* p3 G( |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 O5 g2 v; e6 F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- y2 Q) n& m/ o( \- z
                        8 ]  A! |$ I9 R" Q/ w5 {+ j
                        actionGroup.createActionForEach$message(list, agentSel);2 I+ d  ]: l1 q7 X
                        actionGroup.createActionTo$message(this, swarmSel);$ e; F2 J. }0 `4 J$ q& a* x
                        schedule.at$createAction(0, actionGroup);. V# g( _8 g, e- U7 s) q( n
                        schedule.at$createAction(1, actionGroup);
4 n: C/ k' h9 V# p0 N9 Z8 o                        schedule.at$createAction(2, actionGroup);
4 w% C: }+ b( d# @/ W3 p
9 m6 P- D3 m! @, v1 A2 G                } catch (Exception e) {
! E5 g) v2 o+ U' P% {                        e.printStackTrace(System.err);8 X5 T% f3 C' a1 H' D; K/ q( F
                        //System.out.println(e);, ]9 g$ ?8 P6 Z' L: ^, X: Z
                        System.exit(1);
0 O& R) ?( |" P: c0 t* O9 A                }
, h6 H7 T- @) R/ O, O3 A+ K& q$ @. t+ [6 C3 Y

: E7 I2 k5 V; |: a0 b        }4 ]; ?  b; @' r7 ]* o4 X; z
& z# {. j) q3 Q8 f. b7 Z
        private void swarmSetp() {
( M- z( |7 k+ s% i7 T) w                list.addLast(new Agent(Id));. \& P, j7 G0 z
                Id++;
) ^) S: w2 _4 _7 Q8 [- C        }
7 ^) e: C% r+ h
6 ]* f1 {4 u) n        public Activity activateIn(Swarm context) {0 b6 w+ m# y7 i# k
                super.activateIn(context);
% x, _2 s& h& E  P                schedule.activateIn(this);  w0 i! x/ P; K8 I6 q2 m3 ^4 C
                return getActivity();
" A8 k* \/ b- a& y        }
6 w$ Y  k( ]* j5 ?0 |6 |
6 e1 b3 |4 ?. n/ }# d        public static void main(String[] args) {
! m& Q) a$ U$ V' O+ k                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( n! g% l5 j( ?7 ]( ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. s* C* f9 D  Q6 v9 |* D& B                swarms.buildObjects();
% j$ f* `( @- H- E! e1 B                swarms.buildActions();. B5 x: q! g; J
                swarms.activateIn(null).run();( G7 e, ~9 Y* Q
        }7 o' r! }0 m9 e$ z
- e# I8 v; l, m4 Y: ?: ?- V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 03:30 , Processed in 0.452022 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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