设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7474|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; k1 a6 q$ C0 R6 J$ g, F
/ _0 c7 Y8 U/ Y# R- n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' E  g0 ~$ X0 ?6 Y" |$ B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 s1 [7 L1 {$ c* b4 K5 c
swarm.SignatureNotFoundException
: X' J6 ^. @: `        at swarm.Selector.<init>(Selector.java:76)9 A* T- I$ z: ]6 v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, l; f8 y! N9 b0 Y0 F; o' v! T2 x3 a        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ g: ^# N. P! ]5 H) ~8 g! }( i. N/ z, y5 W4 H! S
7 q, |5 s, N) X8 @
import swarm.objectbase.SwarmImpl;' q. e$ Y' h5 ~- C$ \
import swarm.objectbase.Swarm;
0 N$ ?# t+ o! u5 Yimport swarm.activity.ScheduleImpl;" ^- N- `7 V$ H% W
import swarm.activity.Activity;
- `6 j5 t/ [! c9 s( w" gimport swarm.activity.ActionGroupImpl;
+ @+ T% T2 B. s- n2 D0 Nimport swarm.collections.ListImpl;
5 X% t9 h2 J: N$ m6 mimport swarm.defobj.Zone; ! O8 V; u( E8 _, L
import swarm.Globals;! l) D: F4 p% Z; g0 Y0 E7 k/ i
import swarm.Selector;
% d" h+ C1 A/ S8 w1 mimport swarm.activity.ActionGroup; 9 p: e0 q  d) y. p: o+ X: ^
class Agent {
- B( O- H4 p! L, p3 m' H        char id;" k: a8 o& o( t) ^

( U' y* r5 m% r: n7 K) [2 _        Agent(char id) {
: u6 u5 u, O8 W. G( J                this.id = id;' O: w& [/ x5 \: h
        }
1 m+ y$ k9 |) [8 {: R0 `5 Y% u; _/ l' E& @& a% i5 C
        public void agentStep() {7 v+ M& Z. E) f0 C  e; A+ d0 S
                System.out.println(id + ":" + Globals.env.getCurrentTime());' {) n5 w- u7 b
        }) ]4 R7 G- @8 H( r5 W, x, I
}
" |. w! s; g5 n) C2 A1 g6 r( x+ D8 }4 D0 ?7 a. j8 I
public class ActionGroupDemo extends SwarmImpl {
3 v( y* n; W9 O( X5 v: ~( i" J        ScheduleImpl schedule;# K4 J9 m) @) ]+ i, h
        ActionGroupImpl actionGroup;
) U2 x, ^! P) N* P        ListImpl list;
# Z: A, w; E0 ]7 d! d        char Id = 'a';. \2 j! N% O6 G3 Y  E- ~. X
& x. C) d7 U: m2 b; F& f0 E+ w
        ActionGroupDemo(Zone aZone) {3 P: n4 X  B$ l% l5 ^
                super(aZone);+ a# l0 z) u  l
                list = new ListImpl(aZone);7 O; y4 j* y& F
                swarmSetp();
% B9 |# ]0 a: h0 C                actionGroup = new ActionGroupImpl(aZone);9 Z; U; ~" a3 D3 `4 p) e4 i
                schedule = new ScheduleImpl(aZone);# ~  j" E$ [% g% ^
                try {
7 m6 L* h! ^8 B* H! E8 L3 c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 c. F- m. A" \! G! M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 `, D. e) ~/ C. ]/ l* q
                        
: p" F+ g# @9 x8 N: j; u                        actionGroup.createActionForEach$message(list, agentSel);5 D: b' D( U( \. L1 ~+ {
                        actionGroup.createActionTo$message(this, swarmSel);7 T8 n- I- E4 Y! s( I+ I5 A
                        schedule.at$createAction(0, actionGroup);
/ q5 i+ V6 b- ]* @! N                        schedule.at$createAction(1, actionGroup);
& r( S) ^7 r+ v! Z1 ^& K# O                        schedule.at$createAction(2, actionGroup);- @+ B2 X6 x& g. s) N  B) ^! ~

3 M( S5 X& n3 a/ U                } catch (Exception e) {. E3 K; B. q# X; j6 ]2 F6 e
                        e.printStackTrace(System.err);6 R. T, z6 u0 i! D7 ?: ]; u
                        //System.out.println(e);
* D- b$ G8 `1 N) l* d                        System.exit(1);( C5 y7 l$ j' t9 T1 u
                }/ }% V- D! N" a' }1 D
' [3 k/ B4 @* w  i' ^3 B
  k9 H; `* N$ @6 K* k
        }
# ?) f% P. j' ^* X  T8 [+ O- m  \$ X9 K) h  _5 z- F
        private void swarmSetp() {$ n" p9 S$ r: Z0 m# w
                list.addLast(new Agent(Id));
" I! o2 I1 T' w4 r& [- _2 n: b                Id++;
4 e. x, h6 H) `0 m% r, O        }/ U4 y2 d$ L" l3 c6 b

/ J! p" O/ L& U2 C1 m5 j2 S1 ~        public Activity activateIn(Swarm context) {
. F: e0 s% D; l, W, b                super.activateIn(context);
- n0 q1 n: o" o, o3 p; l                schedule.activateIn(this);' H4 G& c4 U; Q( b# g, L
                return getActivity();
4 Y3 ^7 p. }$ a( q2 ?  F6 K% u! O; [        }
( L& O, n8 s) D- x) X: m
/ L0 b( ~+ |" f9 m) y/ g- d        public static void main(String[] args) {; V  ^. ~; n, H: W, H
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 {8 a; }' Q) U' Y: J  O' |. ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( h) j# [6 T$ k% r# J0 R5 Q8 z$ W                swarms.buildObjects();
6 w; u4 }- H+ g3 x% H& U                swarms.buildActions();) {. T( L2 {: t5 y6 W: K9 |9 X
                swarms.activateIn(null).run();
( e6 l- V5 k* A7 h) A! c  k* I+ Y        }# C! |$ w5 o0 R+ Z# _2 ?

6 W: f# h" V, P% e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 23:32 , Processed in 0.022087 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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