设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8229|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * E9 W7 J# Y; H. m8 v1 c0 r. Y  i# Q/ Q
7 @4 U& a1 Z1 k6 P: h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, J) k7 u5 u3 Y, L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 E4 O8 |3 h: H# s% Tswarm.SignatureNotFoundException
6 }- R7 z" G- R        at swarm.Selector.<init>(Selector.java:76)
1 B+ h- Y: ]( {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& L! c" r1 W, W; X$ U        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 N3 \! u6 y% H
2 ^( ~" x# [- H$ G. Y$ U
; W2 O2 [! C) {import swarm.objectbase.SwarmImpl;0 r2 U) J8 Q# |+ ~6 l& u
import swarm.objectbase.Swarm;: F5 |8 \8 Z0 y4 g
import swarm.activity.ScheduleImpl;
' Q2 c/ @  P- _0 h8 |" rimport swarm.activity.Activity;
' F. T4 R1 M& f* P: I( i! m1 ]" q6 ^import swarm.activity.ActionGroupImpl;: \! _/ B5 p: E4 w( F) x4 d  ^
import swarm.collections.ListImpl;
7 S7 s' y' n0 M  I& himport swarm.defobj.Zone; 1 Y8 c5 C, E( Z8 r2 n
import swarm.Globals;8 m' B3 v  v& \3 j' A/ D5 m0 K
import swarm.Selector;
; M$ t2 R$ ~( Q' Zimport swarm.activity.ActionGroup;
9 ^3 u, K$ S# o# qclass Agent {3 _0 k4 t+ o9 {; A6 p( h3 d) s
        char id;+ N; u% O- i, o2 G7 h' {- b8 r
8 s# t# k, d. B2 X" h
        Agent(char id) {
3 r4 @& U* D. G. s: |! @                this.id = id;
* J  |; m$ ~; R/ f) f" x9 p  g8 O        }  t0 Q# e, n+ l" ~2 a' Z
0 D) X' a4 `3 n  V( J/ p8 W
        public void agentStep() {
1 ]/ q, r7 [: I5 b0 M3 U/ |. v                System.out.println(id + ":" + Globals.env.getCurrentTime());; Q  f; ?& k& s* e
        }
* k' p( ^. u# j; i0 [}$ F$ A0 Q! A# q8 \

8 J4 f4 J0 }/ _  X+ J- qpublic class ActionGroupDemo extends SwarmImpl {4 W: F- r6 p9 A/ U  E
        ScheduleImpl schedule;5 y. M% }8 k- G1 r! h5 e% |
        ActionGroupImpl actionGroup;
2 S9 v; {6 p6 {# J. X        ListImpl list;
; A5 T- r7 f- F- s7 Y$ {0 B        char Id = 'a';
( X0 ^) \  [  Y5 W7 ~
& j; D. ~% N( U- s        ActionGroupDemo(Zone aZone) {
  m- f4 f" f4 V                super(aZone);
" d. K/ z! C7 p2 y3 h2 E                list = new ListImpl(aZone);
3 f1 {( R& ~3 g( _% R                swarmSetp();9 A2 B$ B* H' @: m& b
                actionGroup = new ActionGroupImpl(aZone);& b% @" ?+ _, E% s
                schedule = new ScheduleImpl(aZone);
7 k0 N/ R; f* H' ^6 s, }5 C                try {! j5 J2 i" r0 u; q# y! i! l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ z$ K$ U5 H/ s9 M: Z$ z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ x, d; j- a  H( v. n$ M
                        # K- P- o4 M" }# f9 y. A7 l* G
                        actionGroup.createActionForEach$message(list, agentSel);
' u# u: s- Y3 _# _                        actionGroup.createActionTo$message(this, swarmSel);- p" ]  n/ ]+ J4 }
                        schedule.at$createAction(0, actionGroup);9 N, W5 U# A4 N( R7 W# L: P
                        schedule.at$createAction(1, actionGroup);$ W; `+ l# h4 |. b
                        schedule.at$createAction(2, actionGroup);& j7 Y1 O1 @9 l7 n& U
* [! V3 m4 R; c! x
                } catch (Exception e) {
! {# o1 b' I4 `' w2 [                        e.printStackTrace(System.err);
0 I- {& F! N# I                        //System.out.println(e);
7 ^2 m  J- J# j. @7 ?4 U! g9 b                        System.exit(1);
# x9 ^6 H1 w/ H                }4 X/ R; U3 r, e# q) b+ |. L
) [4 c! Z8 ]: b/ ]% @
/ s0 G# R5 \5 G! `, K: L
        }8 Q% W, |% f+ g4 O% l
2 F+ \2 w% {, m$ f- w
        private void swarmSetp() {3 z( Q1 \; l4 U; R6 d& `
                list.addLast(new Agent(Id));
$ m  S$ W& o9 a; d6 u8 M: {! g                Id++;' \, ~/ ~) L4 A" |- S9 ?- X) a
        }& g; w- z- \& |: k9 R; D

7 M2 v4 t$ ~$ |  u( G$ ^9 \        public Activity activateIn(Swarm context) {* C0 f) [- s: d. H; d1 _5 B5 x
                super.activateIn(context);
* `1 _. |5 Y& f9 I; s                schedule.activateIn(this);
* |2 [; l. S1 {# N                return getActivity();0 E7 a$ j5 A1 i. b, A% H1 Y
        }1 j" r, d) C& B: v% Z1 |

/ n6 J. T2 C! l0 A' Z2 ^        public static void main(String[] args) {4 G$ M" y) E, f* C0 Z0 ~1 [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# F( z) P$ t% c$ O1 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- E* z8 {) L: J2 E4 q0 R
                swarms.buildObjects();5 ?, F# {  g' [, O4 [3 O2 Z0 u
                swarms.buildActions();& S) l7 k; [- u) d
                swarms.activateIn(null).run();" m) T5 B, P# a  R7 ^2 |0 R
        }
6 e; e. Q! s& ^9 ~7 l3 e' b2 C) d  a$ Y# G% F
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-4 03:29 , Processed in 0.022405 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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