设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6393|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : I& B7 @/ q1 B8 }  C% V2 c
' h+ n8 x2 E2 n' n( X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" s9 O4 T4 D3 e: M- g8 X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 v# U+ ?9 b* @swarm.SignatureNotFoundException! q  ?5 T3 X. K9 J: }, B" M/ W4 Z
        at swarm.Selector.<init>(Selector.java:76)( ^' r( x$ D2 m, \/ x
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( `! O$ Q7 K  C9 |' R, v        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ X) Y: F/ l) X, L
1 U3 G# t( e0 m  R# ?: v4 |1 [/ x7 ?% `  C) T, w
import swarm.objectbase.SwarmImpl;8 @: I2 p: h8 o/ @4 K
import swarm.objectbase.Swarm;6 ]; i$ }" J5 I! u! C4 O
import swarm.activity.ScheduleImpl;$ {4 j3 @2 N, m' s  F( c- l" \, y
import swarm.activity.Activity;- x! I9 Z' W2 ?  `
import swarm.activity.ActionGroupImpl;
9 B  S$ A9 ~) D3 T# S$ X$ bimport swarm.collections.ListImpl;
5 b8 M9 z( J, K+ f4 Y; `import swarm.defobj.Zone;
  c* w' `8 o+ i& j6 t* l+ simport swarm.Globals;3 x4 }% P' o+ y2 H
import swarm.Selector;
' ~% D3 B) R4 |6 w; B# v9 I) o! Fimport swarm.activity.ActionGroup; " B- k1 ~1 j; s( p' S$ A
class Agent {
" u  M5 ?; E5 b6 o- ~  m        char id;
. {  q1 o) O- {& t' ^+ f
  y" f0 q6 z+ n! C        Agent(char id) {
. X# I/ e0 v) q* Y* ]                this.id = id;! v% o- b2 V$ p& r+ H( H5 t
        }
. B- _$ @% O, V4 u+ n  \( y+ \4 K
+ q! J/ L9 o, N6 l, l6 @        public void agentStep() {
: r6 I1 @( K" i" Z  z* S. t                System.out.println(id + ":" + Globals.env.getCurrentTime());9 [7 ~/ x: X( t9 l# H: n
        }
  v6 B# @5 G- O3 D}
9 E: ?! p! T  ?. q: I+ @' E" E! v; O$ i" y- s
public class ActionGroupDemo extends SwarmImpl {
' m+ {/ U# W- A' o* E6 M        ScheduleImpl schedule;7 }, B6 \( k* F% ?- ?+ R
        ActionGroupImpl actionGroup;8 h0 m- v3 j" {" R
        ListImpl list;1 l' }0 X: ]$ n; Z  M1 y
        char Id = 'a';
. l' v; {9 V3 ]: d+ p, A; z3 A7 T( Q0 }4 a8 P+ T, ?
        ActionGroupDemo(Zone aZone) {
% s3 Z# `2 d. e9 e8 }                super(aZone);* S% F3 V  v$ G. f+ u
                list = new ListImpl(aZone);; O% C9 w" f7 k2 o& Z* r& b2 H/ c
                swarmSetp();
& P- j, D! i, p. p                actionGroup = new ActionGroupImpl(aZone);
- b$ G6 s% ?7 h3 p- T2 F                schedule = new ScheduleImpl(aZone);* p9 R  @* L  n5 k
                try {
( C* q9 H0 J" w4 [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& l* [( C, \& [0 M+ G. f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 m$ T# x" I$ \+ C& R
                        0 A. p: R+ r. s  C/ T" h# [  s# n! y
                        actionGroup.createActionForEach$message(list, agentSel);2 T8 l* i( H+ }5 P4 d- g$ j
                        actionGroup.createActionTo$message(this, swarmSel);
$ S: n* Z, E# m5 W                        schedule.at$createAction(0, actionGroup);& K, z8 L1 e/ X8 I2 N) q/ f
                        schedule.at$createAction(1, actionGroup);& L7 `/ k0 n/ o9 F
                        schedule.at$createAction(2, actionGroup);' T* `7 H+ s( X) ~& a
4 E* e4 T1 R5 }! o: o8 T! o) q
                } catch (Exception e) {
7 z0 L- D% G. z7 G, Z+ Y) j                        e.printStackTrace(System.err);5 t8 _  l* f! K6 Q/ i& r$ q1 {
                        //System.out.println(e);
% o2 Q/ L: _5 [+ K, \7 R! g/ }                        System.exit(1);
1 n$ k" h$ ^- p% Q                }2 x$ {# v  ~7 }
' V% P. {% Y) {6 i) ~$ g4 Q
5 g6 U" D& {  [# p0 O2 Z9 Z/ ~
        }
% G- ?; \* n" c" w, ~+ ^  O/ G0 \, e  w: S9 u& G9 Y7 q
        private void swarmSetp() {3 `& G4 N' E  r4 h& `7 w: S' {% h
                list.addLast(new Agent(Id));
" E# F0 L3 @- U7 O                Id++;
, R  @( H( v9 {        }8 L* F/ G# c: |. Z9 g* y. I
) r2 Q# T6 h* l# z: {3 z
        public Activity activateIn(Swarm context) {
; Z. r1 j0 W. L$ @+ H                super.activateIn(context);
/ Q( y; l6 c; Y$ I* z; T5 [                schedule.activateIn(this);
* J. N4 e% s% O7 F                return getActivity();
. ~* C" c5 W& q- Z  R% ~        }) H( H4 O) N9 g7 `
8 X. N. Q6 N4 Z: |+ l
        public static void main(String[] args) {  {; a7 |  D+ ?! b' v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* }5 n( L& E' P- O; K( o% {  F9 `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  m/ f! n5 r4 b: G                swarms.buildObjects();( a, g) u5 F7 G) O2 V8 q7 f
                swarms.buildActions();/ h$ x2 x0 a2 l4 v* R* H! R
                swarms.activateIn(null).run();0 ^; l! M8 s9 P0 F
        }
$ T8 |7 Z. Y- i; W  a
8 ]' |8 S* b3 d3 A# O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-27 10:35 , Processed in 0.014163 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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