设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13637|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 W# s) p) q" V; m

% e: x% O4 T: I9 F" N% d4 r8 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- a: w. {& z# V3 w/ N, R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ _6 D' Y/ v5 Q: {swarm.SignatureNotFoundException: t, ?4 u1 F3 a0 D, D) |5 P; s
        at swarm.Selector.<init>(Selector.java:76)
! U3 R, k1 @; w( W* G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ T5 F! o" l# n) f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& t1 Z* j" R! M4 i. ]
0 ]. N& I3 ?3 Y" A

( N$ h+ q$ R/ n; U4 z9 Aimport swarm.objectbase.SwarmImpl;3 `1 O/ Q* P+ Q8 o$ b( D3 j; c
import swarm.objectbase.Swarm;/ c, U4 N. h# t: `
import swarm.activity.ScheduleImpl;
* R, h4 t! w* qimport swarm.activity.Activity;
5 l9 `/ l( W+ Iimport swarm.activity.ActionGroupImpl;* z+ f0 i: ?$ G* V4 R8 L; ~
import swarm.collections.ListImpl;, s  {  i" ~5 _
import swarm.defobj.Zone;
6 n" Z. k7 z5 c7 O3 J: ^2 Kimport swarm.Globals;2 @7 P3 F, V0 i+ G7 S. G5 Q( ~
import swarm.Selector;* H% O  b* ~8 z
import swarm.activity.ActionGroup; " B: p1 W# f7 ~4 E4 c( Y+ l" f
class Agent {
( X3 h* C' Y' Z9 a! W        char id;
# I' @# [4 R7 t
- w# u5 }  k4 w- i, u/ k: t# J7 Z        Agent(char id) {
6 Y2 K$ }4 k4 C                this.id = id;
1 c' ?* u2 s7 l* k' h        }9 @! @9 O' o& x& e; o% r
: y; t: T+ K3 C% P" v9 n; F
        public void agentStep() {
: J( S; z1 h0 u6 d6 R                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 f2 \. p' K( g  g6 K: ^2 W% b        }
; g7 g. A' d. H$ G; ]! @}7 @; W$ @- P' P5 f# s. G# p
8 Z. c7 ~1 Y% b  c/ K& T* V1 `0 X
public class ActionGroupDemo extends SwarmImpl {7 i1 {, m8 ^1 D/ ~& a5 ?' u# k. @
        ScheduleImpl schedule;  X5 c/ s8 C9 _6 L
        ActionGroupImpl actionGroup;
% t# \! {$ [7 T" F% t6 q( B, R! T8 T9 P        ListImpl list;" X# I! k$ D1 x- R, c, f) _
        char Id = 'a';
; o9 N. P& x$ f2 I4 p
, }, N. h' ^3 ?        ActionGroupDemo(Zone aZone) {5 a6 ^& z* ]% r& [# o, l
                super(aZone);
0 U* L  j& Y# r# |& T! ^                list = new ListImpl(aZone);
: X  b3 }7 D# c8 {6 p* s                swarmSetp();  S8 N$ j* Z' R' ]' D# p3 e
                actionGroup = new ActionGroupImpl(aZone);% j9 A& r+ K" G$ {
                schedule = new ScheduleImpl(aZone);1 X, ~) V5 F1 e1 \7 w1 X4 S  s1 h
                try {' Z' c; m; f+ w3 F
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% b5 P7 w' r( B7 u                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, S- j: j1 f: F# ~- A( ~6 ~
                        0 b; r5 G* ]8 _8 b
                        actionGroup.createActionForEach$message(list, agentSel);
* X% Q5 i& z. y- R+ u7 ^                        actionGroup.createActionTo$message(this, swarmSel);
+ s% r" Q% h3 h                        schedule.at$createAction(0, actionGroup);  p, ]2 p5 A7 a. J! P
                        schedule.at$createAction(1, actionGroup);
2 G9 d( r- b6 i- @- B$ Y" G                        schedule.at$createAction(2, actionGroup);2 q- h  R: \8 ~3 n1 `0 t3 Z) [- A
# y( B9 y9 D% e4 E3 r
                } catch (Exception e) {6 j+ `) c0 f7 x4 u  `
                        e.printStackTrace(System.err);
5 ?1 f4 m- Z7 Z' B3 _( E7 y                        //System.out.println(e);( ^5 G# P  j/ P. o" b; |
                        System.exit(1);
* L! t6 _* [% h                }. ]" d+ c% w+ I8 c

7 q8 r* g: `6 u. G
- Z# S4 b0 S& I  b0 L        }
/ A4 `/ R1 h2 ~0 g1 p% m7 H) G& |; S8 v
        private void swarmSetp() {
; G6 m: J" r7 n! Y% g/ O- n2 [                list.addLast(new Agent(Id));
# O3 X7 V8 H  s9 A1 E: d, ]                Id++;
9 W: ]& L3 Z+ d- E        }
! k! W2 k/ w  [6 O
, _- N3 H5 F2 p8 r/ }  {4 @        public Activity activateIn(Swarm context) {
; o5 j! x& Y  G' q6 B( L- Y                super.activateIn(context);2 ^- d3 w/ c. U* d' M
                schedule.activateIn(this);5 p5 |7 W* }) m2 u
                return getActivity();; s) j! t) X: y
        }+ H/ [! |$ r0 |' r

8 N- O5 |2 N% D8 e        public static void main(String[] args) {
  |$ G* r$ c* y# \- @: t- V! g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 W! Q0 g  W) B- y$ D- x; Q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" r7 P% C; G# O1 Z& [6 n" u                swarms.buildObjects();2 ]# M4 t; C5 P0 |: `2 g
                swarms.buildActions();" Y; f' b$ A; n  G/ \
                swarms.activateIn(null).run();
+ {/ U% F! ~* e" N7 z        }
3 V& d4 n5 X& {* T3 G) _% P& ?6 S  t6 y& X) Y# ~( ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 07:42 , Processed in 0.015253 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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