设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7413|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 B: H# X6 D" e5 {2 m
- B# G, ~% J, B! Z. Q% I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' C: V' D: ]3 G/ b# Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. e9 v% O% F" r1 f
swarm.SignatureNotFoundException7 F. Q2 {2 t1 z  S) P4 x( D8 [
        at swarm.Selector.<init>(Selector.java:76)
. t; D  C* w, o& j* f3 D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ g* Q2 v/ q% v9 \. p        at ActionGroupDemo.main(ActionGroupDemo.java:67)  V6 {. n4 ~: @, U# Q! Z
3 P% a$ x6 @8 L3 {' e7 }) N! f+ _

6 H2 e2 P7 o, H7 ]4 dimport swarm.objectbase.SwarmImpl;7 P. u* P; \$ M% K9 w* M  k* o
import swarm.objectbase.Swarm;
6 Q5 i" P1 E; X8 L1 C( Himport swarm.activity.ScheduleImpl;
: C6 [( g7 N  y$ U! v0 }5 kimport swarm.activity.Activity;
' E/ n! g; c: \+ t4 p3 G" E2 m$ Simport swarm.activity.ActionGroupImpl;& F1 J* r% T9 s, T1 m
import swarm.collections.ListImpl;- e" m- J9 A# k
import swarm.defobj.Zone; # q8 \- P7 ]9 ?1 |) s5 R; J% Y
import swarm.Globals;( `+ w( Y! S  S. a) a
import swarm.Selector;# E& k# Q2 ?& B8 E& U  z
import swarm.activity.ActionGroup; 8 F8 [2 i( @  j6 k, {- N
class Agent {
# g% Q* V9 i. Q! S" S! A( S: |        char id;
! ]+ [4 u$ K4 \6 N$ ?  O+ |% g; @
) Z# f. h: f. z! o- W4 ]0 P        Agent(char id) {
' M# A8 p4 e9 |' T                this.id = id;
$ V$ M% B* w5 V- ]        }+ L" J9 [& }7 b( J
" j# J& ~4 b# n
        public void agentStep() {0 o+ ]0 D' q2 @
                System.out.println(id + ":" + Globals.env.getCurrentTime());* p, Z( ]/ W; [$ K# I
        }
2 g- J  N) q  |1 N}3 u/ K$ c& E& f# s" M3 O3 w

! k, r" B1 R) D0 J% |/ D, P0 ~public class ActionGroupDemo extends SwarmImpl {
1 X! M9 [5 v) t3 ~2 o        ScheduleImpl schedule;% ?" p- ?! e, c" W; P4 y* N
        ActionGroupImpl actionGroup;
  e  f+ Z$ r3 H! Q) D# l# |        ListImpl list;% t0 y6 C& r3 c# l1 Y
        char Id = 'a';
% X/ T  f/ L9 V+ \6 t" q4 f5 q5 [
        ActionGroupDemo(Zone aZone) {
4 S. ^; R# I4 s% l, O9 B7 C                super(aZone);( h* v/ |/ ]& J# T$ [5 c0 @' @
                list = new ListImpl(aZone);% l! z& w3 D- O# b. a
                swarmSetp();
/ m. ?% u) z; c3 D                actionGroup = new ActionGroupImpl(aZone);$ ~7 I# R: S) m) l4 i' x1 t- {
                schedule = new ScheduleImpl(aZone);& m, O% c0 B4 |9 ~" O
                try {
& X' N' k( q/ p. g, M8 y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 ~8 h' h* ?: e2 v" R& c, U. }& x$ J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& R: l* g( Z$ p* {  D
                        
& t; A; g/ v$ U. P- P+ g) @                        actionGroup.createActionForEach$message(list, agentSel);
% t. c4 `" t7 y6 ]- G6 y1 s                        actionGroup.createActionTo$message(this, swarmSel);8 P/ H( R+ X/ d6 c8 z" ?
                        schedule.at$createAction(0, actionGroup);# ~1 T4 U- S# G! f' h- t
                        schedule.at$createAction(1, actionGroup);
- V7 q6 z- h3 [( r                        schedule.at$createAction(2, actionGroup);, W$ M; @# K+ `/ u  c) o8 Z" F
& P7 ~# ~3 C/ k  v
                } catch (Exception e) {
% y$ h# B7 N8 d3 M& J                        e.printStackTrace(System.err);
% N) [3 d: e  Q' ^4 J& T  i/ i                        //System.out.println(e);
: G+ l# `4 t2 [1 Q$ H                        System.exit(1);
1 K6 w3 D% E  ^                }# A! u$ N( q. r$ y0 S
. v- q  I  ?$ Y! X
* H3 f: T2 X/ d. ^% t5 x
        }
: g. C4 Z0 Q% D, A* ?, j
% O9 M& ~: L* `2 D) B3 m        private void swarmSetp() {1 u; {" M' L. p% x, ~
                list.addLast(new Agent(Id));
7 Y2 T+ c( C3 v% M( ^                Id++;# R! }& y$ ?/ ~6 Y( i
        }
: Z0 \5 U6 f! f! H" I0 i
+ J: g! P; C2 ?3 G) b        public Activity activateIn(Swarm context) {
- S+ a! O3 t0 w+ N                super.activateIn(context);' S# W) g3 S* r
                schedule.activateIn(this);
1 x2 s1 l+ H" ~5 C3 F% j$ i                return getActivity();
: k, `: w  ~& h1 U. ~- O        }
/ I, F+ Z$ b1 e. `, A+ D. T' [7 b+ }/ k
        public static void main(String[] args) {1 D8 r6 Y$ O1 \" r. H6 G0 {1 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 g9 b5 w/ \7 X, i  ]" x4 Z- U6 q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& Z' w; O+ y$ E- V& q
                swarms.buildObjects();: ~6 H/ u8 q3 A! A
                swarms.buildActions();8 s" H4 N# |) }* c+ }2 b
                swarms.activateIn(null).run();
4 X6 X( Y' g/ E3 c        }
/ Q: ]2 I) u! n' M1 E$ R
) s$ T1 h! K! ^0 V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-1 17:26 , Processed in 0.019133 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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