设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7053|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / e. l" R. _! Q8 H

" _: r3 P7 v+ ^2 B8 P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& e$ }: s& _: O1 B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) [5 s8 `7 V* w# L
swarm.SignatureNotFoundException9 x( \9 H; L  r0 S2 h# D  l' i
        at swarm.Selector.<init>(Selector.java:76)
6 t2 \% f( D2 E$ h7 P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ B9 f- i" T* \3 C! ]% f1 I* T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 I+ a. h! b) T. J
' i% S0 }* S) D* g1 S% ]
' m9 Y" J- F  q
import swarm.objectbase.SwarmImpl;- p# }5 |9 M# U1 A2 q; X; G
import swarm.objectbase.Swarm;
& r1 r2 \- O- Zimport swarm.activity.ScheduleImpl;
6 Y. s/ D  M. [5 _2 @0 c* Nimport swarm.activity.Activity;) v4 D$ U2 U8 M) Q: i! \8 t" U+ ]7 t
import swarm.activity.ActionGroupImpl;
, }" V: s6 t0 U  e+ W* qimport swarm.collections.ListImpl;
8 R2 F8 G( Q+ v8 \1 D, D3 ^3 F8 uimport swarm.defobj.Zone;
$ Y4 a3 a2 @) m+ x$ Bimport swarm.Globals;$ i$ E0 x3 C7 ]( @
import swarm.Selector;& Y' \5 ~- o, t3 U
import swarm.activity.ActionGroup; + B7 Q% `4 A" f) b
class Agent {
- H$ Z$ D) }. R( V        char id;; X- d$ Y# d+ R1 i! x  \7 |9 ]0 v
% X  f+ \8 U( b
        Agent(char id) {  y/ u. V+ h$ u1 Q5 u
                this.id = id;* ^( T- a% Q5 l" x9 h
        }
7 l0 r5 J' }% _- m; u4 ^5 ^2 U( `, g7 [% |* N* M+ `
        public void agentStep() {+ i% D/ @! @( b' w  m4 p4 b+ u0 K7 x5 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 L) P: k+ w' O& y" D1 g' y! @' y
        }# T2 ^1 s4 T+ U" }( D
}2 c6 f" a4 w- _7 I5 n2 d
3 Q. |6 N/ |+ K: m- j
public class ActionGroupDemo extends SwarmImpl {
  ]3 P2 i3 C+ }/ C        ScheduleImpl schedule;
) S4 ~* ~8 f" W. U$ i3 W( P" X        ActionGroupImpl actionGroup;6 }1 ~( R2 Z+ Q7 J
        ListImpl list;2 V3 a5 g9 ^/ c3 }3 d' c
        char Id = 'a';2 l& ~2 w2 D. {( e0 v# P5 T8 J
3 L3 E( l1 e* J
        ActionGroupDemo(Zone aZone) {, q9 ?* @5 a" P
                super(aZone);$ \: u% T) h; o
                list = new ListImpl(aZone);0 \9 |+ ^! h4 B! e: U9 c6 Q1 M
                swarmSetp();  ^  S/ X1 W! m4 T
                actionGroup = new ActionGroupImpl(aZone);
- Y- h9 S  r" y) X                schedule = new ScheduleImpl(aZone);
5 u4 }) {& @( k5 e; J" K( b+ G                try {
  o% S: s( ~  j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' X3 |! T# z# M: D, E9 v                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( B3 f' ]+ I+ ^0 y% R# @+ A* C                        " p5 p6 ?* R1 h  _- ?6 Q
                        actionGroup.createActionForEach$message(list, agentSel);) b; H6 q" a/ l$ z7 J
                        actionGroup.createActionTo$message(this, swarmSel);/ ^1 x( [# Z9 b9 `) \! u
                        schedule.at$createAction(0, actionGroup);
% I8 w( Q  G- u9 l                        schedule.at$createAction(1, actionGroup);' t! b9 y; f. k
                        schedule.at$createAction(2, actionGroup);
/ Q6 {! V  V' C+ q" x! U' P
6 i' {# R( g- m2 m; t) y                } catch (Exception e) {4 }) a5 u8 q- {# G8 _# z% C5 t
                        e.printStackTrace(System.err);
  a% d: e, N+ N' E" g  q; e                        //System.out.println(e);8 U) o2 W0 t- L5 C' v
                        System.exit(1);
: m6 i5 @8 f/ h. o8 @" T                }
. Y" h' g& C3 O7 F" a% ~
$ Q' q+ t. i! U" C
' z2 _+ e0 _( c& \8 T: _& J; b- q8 h        }7 ^5 W, G. Q7 E8 o* g" R
" H' o; G, y+ _  i& I" ^
        private void swarmSetp() {
1 J$ R- O2 ~+ R* {+ |                list.addLast(new Agent(Id));
( U* U1 T* r' Z9 E8 @; y                Id++;: g+ T7 d! ?0 I0 L# J
        }
- L" R: y% T- Y% n! r& f! i8 A7 w. {* M
        public Activity activateIn(Swarm context) {  v- \3 o+ K5 T' i8 W% y
                super.activateIn(context);; H6 E, _  S) o6 t
                schedule.activateIn(this);
* V5 ]0 @7 z. _( o1 G                return getActivity();
' T' o" {# H! [9 i6 x        }
* T, W. B5 `* q+ [% k( b
+ u' ~2 t4 }  O  l& H        public static void main(String[] args) {
. b! D5 C/ ?7 Z1 z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 {9 X! r+ p( S# U: L" V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 D+ X4 \3 y1 S7 A
                swarms.buildObjects();
  L/ o! ~: e0 g9 {2 J/ X9 I                swarms.buildActions();, O% b) M$ @8 `2 g$ [6 X4 e
                swarms.activateIn(null).run();
  E1 X; H" g9 U5 s+ e  a        }
% L$ S# r! U% L9 q) \4 C" @) E3 w2 o! m" m$ ?, \& E* G1 D. n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-17 21:33 , Processed in 0.017282 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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