设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9427|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ L4 k+ Z' W& x0 [5 K4 |  u! i3 b' W! r3 f& d6 l8 z! `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  X, P2 g- c; s, ?0 X9 J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., ^1 B7 u7 l# w, ]
swarm.SignatureNotFoundException' u' p# `# ?, E
        at swarm.Selector.<init>(Selector.java:76)4 @9 ]# y, U/ G( V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, ]' b" C* h  d1 v2 T        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 y: ^; Q/ v. Z3 r

$ v$ n6 v0 J4 v
% _5 n! {5 P: l8 V% O6 rimport swarm.objectbase.SwarmImpl;: ?. E' j" ?7 ?( x" k* w8 E
import swarm.objectbase.Swarm;
* D5 k$ r% ]7 [; a' J/ nimport swarm.activity.ScheduleImpl;
$ p  E, ]* W' Dimport swarm.activity.Activity;: x. u/ x( J8 o6 n9 N
import swarm.activity.ActionGroupImpl;
$ w( U; ~; z6 a. n7 Jimport swarm.collections.ListImpl;
: m! ^3 X8 \" ^# Oimport swarm.defobj.Zone; ( {4 c! G* b. U2 [2 {
import swarm.Globals;
. d! ?% ?5 A5 O  u' oimport swarm.Selector;
5 i8 M* c( s& H6 n0 bimport swarm.activity.ActionGroup;
* l2 P& H* m2 tclass Agent {6 H# K, H& m9 n# x! l# a& C
        char id;; T. G5 G. L) ]; j5 g) p

- ]; g$ |  B1 ?2 h        Agent(char id) {3 e8 ]! R. U! }5 V0 D
                this.id = id;
3 |7 `( r0 ~) o9 A( O! U        }" u( w) Z; t8 p- {
* D% Z8 B2 n) U6 S
        public void agentStep() {
* q; Y! d1 K/ ~! [& K- w; ~# v                System.out.println(id + ":" + Globals.env.getCurrentTime());
) z, t7 p; V  V9 w# {7 N' P        }6 @5 I& b, `2 f$ ~: W
}7 H/ r% `+ L" |, t

# G( m6 f6 f5 C: ?" zpublic class ActionGroupDemo extends SwarmImpl {
* m3 h8 o3 b0 N5 f; r. X        ScheduleImpl schedule;( A; y, l: O4 Z  I3 s
        ActionGroupImpl actionGroup;2 r" ]' d4 D% P8 D. Q7 w! Y
        ListImpl list;  g7 g5 E6 o& J, ~
        char Id = 'a';) ?& h2 c7 B, K' e! c9 C- e

6 y3 D  v' j9 i% W% _        ActionGroupDemo(Zone aZone) {+ W2 [  x+ `2 I# X
                super(aZone);
  n. I8 j% U5 }* T$ M                list = new ListImpl(aZone);6 o4 t& w9 I# `
                swarmSetp();7 K2 G2 C) U/ f' \/ r
                actionGroup = new ActionGroupImpl(aZone);! N# C; p) y3 B, x+ Q" V
                schedule = new ScheduleImpl(aZone);
, N% k  v! d$ F8 l/ {7 L                try {
; u, l; G$ {9 l% I0 ?. h0 Y' w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 z4 \1 `& V; D& G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 V: A6 s% v) `7 u+ y4 }- v                        / H0 U7 H& z2 v
                        actionGroup.createActionForEach$message(list, agentSel);+ a3 b4 U- _' ]  {7 H1 Z: S
                        actionGroup.createActionTo$message(this, swarmSel);' s3 w% e7 E" g% E$ F1 p
                        schedule.at$createAction(0, actionGroup);
% r9 k  \3 V) Z0 H3 q+ a0 O                        schedule.at$createAction(1, actionGroup);
0 O1 h0 S. s8 N6 U3 n                        schedule.at$createAction(2, actionGroup);
( g! [7 x3 H% Y/ M2 H- H
, T# Q$ w6 u5 f                } catch (Exception e) {! ~) I! K9 Q9 |$ U! n+ w
                        e.printStackTrace(System.err);
' t, J, a  n: _* m                        //System.out.println(e);
+ y4 Q9 W9 \. S7 C' K                        System.exit(1);, ]# w! U* `' k8 k- y% O% C
                }
( H! y8 k/ [4 N, _  g) m
4 C: n. H: r" F. A1 A) R* ?, Q( ^! I/ o. t5 ]3 k( F  k
        }0 p; p5 x6 P3 e! W
, O$ ^6 G% B; D. ?: K* l# }
        private void swarmSetp() {1 x& ?+ F! a  D, F1 m5 V
                list.addLast(new Agent(Id));
; x- D/ I5 N# W                Id++;! q* O; r0 D" d; o
        }
2 H/ j! U& P, j/ Z5 @. f. J8 F# x6 ?- }1 W
        public Activity activateIn(Swarm context) {
% C% G. a  `2 I                super.activateIn(context);6 \" k, w8 o4 x9 C. R
                schedule.activateIn(this);! `8 Y4 c. j1 c1 }8 T
                return getActivity();1 o5 o1 a+ ^% O3 @, J
        }
; a; H1 {$ k/ |+ |6 D6 C
+ q* }7 M* @7 B" q        public static void main(String[] args) {
/ Z& V3 |2 [* {: f" w' M! \                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: y5 K' l$ ?! `5 Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 |; Q: L0 L: T  s5 r; D
                swarms.buildObjects();
2 M! x- b7 X+ P( x, n                swarms.buildActions();, ~1 [& p" c# C) W% l7 Y& l
                swarms.activateIn(null).run();
% s+ ^8 }' |' a7 p. n        }
8 L! _' C0 U/ I
7 B' T& D6 v- E5 X* f! q2 M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-11 23:29 , Processed in 0.019180 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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