设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13120|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 `: `6 \; @0 _" R" ^
  {  N. F& l  n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% f+ n6 m" B- g  n- a9 u" e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ u2 A6 G0 n0 Dswarm.SignatureNotFoundException
, C7 m1 E+ u. @6 _        at swarm.Selector.<init>(Selector.java:76)1 s- J6 y& ~0 y5 @: H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# ]8 Y: ~; O/ L  v
        at ActionGroupDemo.main(ActionGroupDemo.java:67), A+ ~% U  J8 B  A' e3 X9 l
# B) G, p5 g6 B9 b

" z" ?9 o1 G; {0 ~# |import swarm.objectbase.SwarmImpl;
9 G* b) k4 G% s8 ?% V* R& Kimport swarm.objectbase.Swarm;
! d0 E" K( [9 ]import swarm.activity.ScheduleImpl;) T0 d( n; t1 `7 [" Q
import swarm.activity.Activity;
3 ~' b$ j. W/ f8 mimport swarm.activity.ActionGroupImpl;: m3 @" ]1 i5 D4 M
import swarm.collections.ListImpl;# I5 _/ ?% `% Z
import swarm.defobj.Zone;
6 b6 U, j7 X  a, f5 X0 j6 }* b+ m6 h' Gimport swarm.Globals;
. ~# H- H4 W) f! l4 q/ ?import swarm.Selector;
. g& A8 v$ Q( Uimport swarm.activity.ActionGroup; # A1 v. x5 k' `) e  s5 W
class Agent {
" c% X; A+ b! w$ g2 |; C        char id;6 y- r. ^4 G* q. v  J
$ J. b* u' F" N; i
        Agent(char id) {6 k9 h: P$ u  b: h) s
                this.id = id;- A; g' ^1 s% ]; t- D, t) K
        }% u/ k1 L- D1 w/ k
  P) ^) q0 I9 ?% N* c' I8 U" A
        public void agentStep() {# W- i6 I, s5 m0 l
                System.out.println(id + ":" + Globals.env.getCurrentTime());, P$ z: p6 T( _0 O/ [$ W6 a
        }
* L( |; t. H3 ?5 }$ ^* ]3 Y}. i# {# K. d; C1 W" L
5 I/ C% E, y4 F4 u
public class ActionGroupDemo extends SwarmImpl {
9 S1 ]+ P' d+ |9 p5 ]  _( ~        ScheduleImpl schedule;1 b, \9 |$ l. }. d: b
        ActionGroupImpl actionGroup;
* T  i& X5 N9 z! F        ListImpl list;# d% Y- w7 O3 @* t* X- b
        char Id = 'a';, b: ?/ r3 X. Y2 R2 j' N# K

( P6 a+ s% o! L8 }7 U7 y        ActionGroupDemo(Zone aZone) {
  J8 M7 ?& c5 u                super(aZone);
5 I( c3 X( @, \+ z4 X( O$ a                list = new ListImpl(aZone);9 r/ P7 S0 T# H: x2 x, R0 g# D
                swarmSetp();& |0 [2 y4 g& t  J; p- \3 Q/ t6 q
                actionGroup = new ActionGroupImpl(aZone);* j4 t. n2 F' ]+ p' O
                schedule = new ScheduleImpl(aZone);. \* S+ z9 |1 a& a8 \' z+ U
                try {
: E. E/ S$ q2 @6 {( c2 [- A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: S' T" x& f4 l: Z% z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" U% M9 A3 h3 s$ `+ B- N                        
7 Y: C9 Z9 J3 p3 b                        actionGroup.createActionForEach$message(list, agentSel);, h& g* {. t9 T5 @
                        actionGroup.createActionTo$message(this, swarmSel);3 o" H5 e& m+ m3 B) n. |1 {( a, m
                        schedule.at$createAction(0, actionGroup);6 `. i4 x( g) ]+ o1 Z
                        schedule.at$createAction(1, actionGroup);
; H3 D0 V/ v: {                        schedule.at$createAction(2, actionGroup);. j/ \8 F! u% z
, @4 Y. ?! |3 e2 e  j2 L
                } catch (Exception e) {8 ~" ~- O/ g- h1 ~/ d5 h* ]# i
                        e.printStackTrace(System.err);4 |4 ]. L9 M: v+ K
                        //System.out.println(e);3 i1 Z! C5 K. J- i0 |5 x
                        System.exit(1);# a$ y! U4 I4 K
                }
5 h' \/ e9 \+ a- C0 m! R8 L# g4 |
8 `. N, b- @0 s4 ]# ?" D; v4 R" M5 v8 J5 \
        }, ]% z. M% U% G$ Y

* X  R9 N6 f: K        private void swarmSetp() {/ H( m! x6 C2 n
                list.addLast(new Agent(Id));
6 w0 @, g3 f  F! ^# ^6 `' U2 a5 ~                Id++;) ^' }1 o$ ^+ j
        }
3 Y8 x) d  A* V
1 P; t) d6 W& |7 J4 A        public Activity activateIn(Swarm context) {% S  @/ m, {7 W# ]0 R3 K
                super.activateIn(context);
; ?) V# G8 Y/ f; w$ Z                schedule.activateIn(this);
% ]; R# d% p) ]( k                return getActivity();0 z6 ?; x, j* L
        }6 ]' T- P/ ?7 y% }' R

8 U! i, |; X% q& Y        public static void main(String[] args) {
" k9 Y, i6 u3 H. t3 ]/ D0 ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- K8 y* M9 A$ {  ]! J% P: O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 N" m* Y) W9 {; T5 L
                swarms.buildObjects();6 P; B$ ]3 {" E! k9 @+ S# K7 C6 o
                swarms.buildActions();7 |- r1 ^( c- o6 ~
                swarms.activateIn(null).run();/ O  c5 M( V7 f+ t. J# J
        }3 v+ o( s$ I7 W$ X# v( j; C3 C
+ I2 ], x: S0 t; g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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